目录是这样的:
test.html
blah
hmmm
在“blah”里面我们有所有的applet文件,包括blahBlah.class。在“hmmm”里面是一些更多的类文件,它们是从库中获取的,它们也被项目使用。
我在test.html中写道......
<applet name="blah" code="/blahBlah.class" codebase="blah"></applet>
(以及我能想到的所有其他变化)
我得到的最远的是:
java.lang.NoClassDefFoundError: blahBlah (wrong name: blah/blahBlah)
现在在blahBlah.java里面,我们有:
package blah;
我不确定它是否相关。
还想知道是否有必要将项目放在jar文件中并设置applet的归档属性?
真正的档案不是祸害和blahBlah,但我已经忠实地取代了这些名字。
答案 0 :(得分:3)
java.lang.NoClassDefFoundError:blahBlah(错误的名字:blah / blahBlah)
这基本上意味着它已被执行为
java blahBlah
而不是
java blah.blahBlah
换句话说,您的code
属性是错误的。它必须是
<applet name="blah" code="blah/blahBlah.class" />
或仅仅是FQN(另见安德鲁的评论)
<applet name="blah" code="blah.blahBlah" />
codebase
默认为当前文件夹,在这种情况下没问题,因此将其删除。另一种方法是将其放在另一个文件夹中,例如/applet
或其他内容。您至少应该不使用包文件夹作为代码库,而是使用包根。