首页 文章

ClassNotFoundException使用<applet>标记在Java Applet中出错

提问于
浏览
1

我有一些我之前发布的代码(转换为应用程序),它作为applet工作,但后来神秘地停止在IDE applet查看器之外工作 .

代码在这里:http://www.mediafire.com/?4eslqqr4aoh33j1

在将代码编译成.jar文件并将该文件上传到我的站点(www.insertnamestudios.com/lib)之后,我试图将applet嵌入到不同的站点中 . 我认为它工作正常,但显然不是 . 我用来嵌入的HTML代码是

<applet codebase="www.insertnamestudios.com/lib" 
code=ins.awp.game.AWPASG.class archive="AWPASG.jar"
width=1024 height=720>
</applet>

但我不断得到错误:

load:找不到类ins.awp.game.AWPASG.class . java.lang.ClassNotFoundException:ins.awp.game.AWPASG.class at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)at sun.plugin2.applet . 来自sun.plugin2.applet.Plugin2ClassLoader.loadCode(未知来源)的java.lang.ClassLoader.loadClass(未知来源)的sun.plugin2.applet.Plugin2ClassLoader.loadClass(未知来源)中的Plugin2ClassLoader.loadClass(未知来源) . sun.plugin2.applet.Plugin2Manager上的plugin2.applet.Plugin2Manager.createApplet(未知来源)java.lang.Thread.run上的$ AppletExecutionRunnable.run(未知来源)(未知来源)

我不知道为什么我得到这个错误,因为代码库指向正确的位置,而AWPASG.class文件位于.jar中(我已经反编译并检查过) . 我是否错过了实际applet本身的内容?我认为我不需要给它任何额外的权限或任何东西,但我可能会弄错 .

我已经尝试过从Google找到的解决方案,包括删除.class扩展名,但无论我尝试使用HTML,都会继续遇到同样的错误 .

1 回答

  • 0

    只要JRE理解,该代码库就不是有效的URL . 将其更改为

    codebase="http://www.insertnamestudios.com/lib"
    

    更一般地说,使用deployJava.js来编写applet元素 .

    另一个答案(现已删除)也建议删除 .class 扩展名 . 这是正确的建议, .class 扩展是可以容忍的,而不是正确的 .

相关问题