2010-10-12 44 views
0

我只是把类文件和html文件放在同一个目录下。我打电话给这个小程序:如何为本地开发部署一个java applet

<p align="center"> 
     <applet code="/ShowImage.class" width="200" height="200"> 
     </applet> 
    </p> 

显然这是行不通的。建立本地发展最方便的方式是什么?


编辑:

我的applet代码:

import java.awt.image.BufferedImage; 
import java.io.IOException; 
import java.net.URL; 
import javax.imageio.ImageIO; 

/** 
* 
* @author PCKhoi 
*/ 
public class ShowImage extends Applet { 
    private BufferedImage img; 

    public void init() { 
     try { 
      URL url = new URL(getCodeBase(), "what_I_think.jpg"); 
      img = ImageIO.read(url); 
     } catch (IOException e) { 
     } 
    } 
    public void paint(Graphics g){ 
     g.drawImage(img,20,20, null); 
    } 
} 

回答

0

我想我知道它为什么现在不加载。这个小程序被包装在一个复杂的netbeans项目中,这就是为什么把class文件和html文件放在同一个目录中不起作用的原因。

我的解决方案是使用简单的IDE,如DrJava,如果你不需要项目功能。

+1

我使用TextPad作为源文件的编辑器。它可以从几个关键笔画编译或运行,并且我添加了一个新的击键来启动构建文件。对于许多小型项目来说,比Netbeans这样的强大IDE有更多的麻烦。 – 2010-10-12 09:25:50

1

试试这个

<HTML> 
<HEAD> 
</HEAD> 
<BODY> 
<APPLET ALIGN="CENTER" CODE="ShowImage.class" WIDTH="800" HEIGHT="500"></APPLET> 
</BODY> 
</HTML> 

,并请发表您的applet代码

+0

ehm,那不能解决它。看来它找不到类:“ClassNotFoundException:.ShowImage.class” – Khoi 2010-10-12 04:14:52

+1

@khoi它有任何包结构,你可以发布你的DIR层次结构 – 2010-10-12 04:55:04

+0

life.java非常感谢!你帮我弄清楚了解决方案。 – Khoi 2010-10-12 08:52:03

1

一些注意事项:

  • 公布(在这个时刻)的代码不会编译
  • 不要吞下例外断码

要编译和运行..

prompt> javac ShowImage.java 
prompt> appletviewer ShowImage.java 

代码(注意,图像名称将需要改回)。

//<applet code="ShowImage" width="200" height="200"></applet> 
import java.applet.*; 
import java.awt.*; 
import java.awt.image.BufferedImage; 
import javax.imageio.ImageIO; 
import java.io.IOException; 
import java.net.URL; 

/** 
* @author PCKhoi 
*/ 
public class ShowImage extends Applet { 
    private BufferedImage img; 

    public void init() { 
     try { 
      URL url = new URL(getCodeBase(), "icon.png"); 
      img = ImageIO.read(url); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 
    public void paint(Graphics g){ 
     g.drawImage(img,20,20, null); 
    } 
} 

与您的问题相关的来源的重要行是第一条注释行。它提供了一个HTML元素,Applet查看器将解析并用作伪HTML。