|
import java.applet.Applet; import java.awt.Graphics; public class App extends Applet { String mystring; public void paint(Graphics g) { mystring = "Hello World11"; g.drawString(mystring, 30, 40); } } 在HTML中引用: <html> <APPLET code="App.class" codeBase=./ width=200 height=200> </Applet></html> 就上面这点代码,我把公司的机器上的自己装的JRE1.4.0不用,将那个plug-in与浏览器的捆绑去掉后,这个程序在IE上居然就不正常了,出错提示为: load:App class not found 我一把那个jre1.4.0的plug-in选上,运行就正常了。还有,我在家里的电脑上,去掉JRE后上面的程序在IE中运行又是正常的,但如果给这个APPLET加上个包,将它打成一个JAR文件(app.jar),它又不正常了,提示和上面的一样。加包名的写法如下: <html> <APPLET code="com.abc.App.class" codeBase=./ width=200 height=200> <PARAM NAME='archive' Value='app.jar'> </Applet></html> 这种情况如果把jre1.4.0的plug-in一选上,运行又正常了? 奇怪啊,MS不是有个虚拟机的吗?我这个APPLET没用什么新东西啊,为什么会不正常了,还有,更气人的事是:我的机器上有一些别人做的APPLET,没有JRE时,我的那么简单的APPLET不能在IE上运行,而人家的APPLET还是可以照常运行,是不是在APPLET里面还要设置什么啊? 非常感谢! |
|
|
|
windows XP 没有Java 虚拟机的。。
|
|
|
不是XP,是9X和2000的机器的,最恼火的这个机器上有些别人有APPLET做的系统,不用自己装的JRE,他那系统照样能运行,而我那么简单的一APPLET,不用另外装的JRE就是不行,郁闷
|
|
|
编译的时候用javac -target 1.1 ursrc.java
因为MS一直用得都是相当于jdk1.1的版,不会升级的,jdk1.2才会有swing 用awt就可以,否则会出现class not found. |
|
|
要怪只能怪 微软!!
楼上说的恐怕还是不行! |
|
|
to: kypfos(深圳不是我的家)
老兄牛,编译的时候加个你那参数,上面的例子就已经能运行了,厉害厉害. 现在我的实际应用中都是有包的,我刚刚加了包再试,还是出错,我先再看看,看是不是哪里我弄错了. |
|
|
如果用JB的话,就可以在编译的时候选择旧版的JDK
applet的应用不是很多,MS不支持也很正常...更何况他们本来就不喜欢Java |
|
|
我是用JCREATE的,在jcreate的编译参数里,加上-target 1.1后,整个项目都编译一次,现在在运行没有开始那样的找不到类的出错提示了,应该是上面的那个问题解决了.
不过郁闷的是,现在在运行的时候会莫明其妙的报一些错(在IE的状态栏报错),在编译时都不会出的错啊,例如:有一次报了一个我在用Vector时,用get(i) 来得到一个值,系统报错说没有这个方法,然后整个APPLET还是显示不出来.这样一来,会不会很多的方法都不能在1.1下面用啊?这个方法很基本的啊,应该没问题的吧,如果连这种方法都不能用,那就惨啦. 本来整个系统全部弄好了,也快要交货了,可我以前没在IE的JVM下试过,以前自己的机都有JRE的,现在好惨,郁闷 |
|
|
看一看jdk api
Vector的get(index i)方法是 Since: 1.2 换别的方法。 -------------------------- 他们为什么扣我的信誉分 扣我信誉分怎么没有记录 -------------------------- |
|
|
我KAO,一查文档才知,Vector的add()啊,get()啊,这都是1.2后才出的,这还搞个鬼啊,还不知有多少的方法要换过来啊,太郁闷了吧,如果还有些方法是1.1支持的,而1.2又不支持了,那不麻烦了,人家的客户端说不定又装了JRE,烦躁...............
|
|