我得到了ff。错误Java控制台偶尔:Applet类加载器无法在jar中找到其中一个类
Exception in thread "thread applet-my.package.MyApplet-10" java.lang.NoClassDefFoundError: another/package/SomeClass
at my.package.MyApplet.init(MyApplet.java:95)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: another.package.SomeClass
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
... 3 more
Caused by: java.io.IOException: open HTTP connection failed:https://myserver/mycontext/applets/another/package/SomeClass.class
at sun.plugin2.applet.Applet2ClassLoader.getBytes(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.access$000(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 7 more
我的小程序标签如下:
<applet codebase="../../applets" code="my.package.MyApplet" class="invisible" id="myApplet">
<param value="value0" name="param0"/>
...
<param value="valueN" name="paramN" />
<param value="folder/myApplet__0.0.1177.jar,folder/commons-io-1.3.2__0.0.1177.jar,..." name="cache_archive"/>
<param value="0.0.1177.0,0.0.1177.0,...," name="cache_version"/>
</applet>
我强调是“偶尔”是很重要的。有时候,小程序的初始化并不顺畅。这也意味着,通常,当浏览器重新启动时,问题就会消失。
我知道applet fails to load class from jar和Applet class loader cannot find a class in the applet's jar但我认为它们不适用于我的情况。 SomeClass和MyApplet位于同一个jar中,并且该页面正在本地访问。
我认为会发生什么是Java浏览器插件无法从myApplet__0.0.1177加载类。jar等,所以去代码库文件夹中寻找它。现在的问题是,它如何能够加载MyApplet而不是SomeClass? – 2010-03-12 02:57:41
客户端使用什么版本的Java? – uthark 2010-03-22 12:24:55
您表示该页面正在本地访问,但在日志中我看到“myserver”。你的localhost机器的这个名字是? 另外,你用什么浏览器来测试? Internet Explorer,Firefox? – uthark 2010-03-22 12:30:13