5

我想知道您是否可以将主类(或具有 init 方法的类,无论如何)放在一个包中,并且仍然让它在浏览器中运行?大多数时候我把我的小程序放在(默认包)中,但我这里的小程序是在一个包中,所以我仍然可以将它嵌入到网页中吗?

我用谷歌搜索了它,结果很少。假设我有MyApplet.class一个名为app.jar 文件的目录MyApp.jar

我试过这些没有成功:

<applet archive="MyApp.jar" code="MyApplet.class">
<applet archive="MyApp.jar" code="app/MyApplet.class">
<applet archive="MyApp.jar" code="/app/MyApplet.class">
<applet archive="MyApp.jar/app/" code="MyApplet.class">
<applet archive="MyApp.jar" codebase="app/" code="MyApplet.class">

这些中的每一个都给了我一个 ClassNotFoundException。

提前致谢。

4

3 回答 3

3

archive 属性应该包含 jar 的文件名,并且应该与网页放在同一目录中。

代码属性中的类文件应包含由正斜杠分隔的完全限定类名,以指示目录结构。

因此,在您尝试的试验列表中,试验 2 应该成功,前提是 MyApp.jar 实际上与 html 页面一起存在。此外,MyApp.jar 应包含根中的“app”目录,该目录应包含 MyApplet 类文件。不要忘记在应用程序包中有 MyApplet 类本身。

您可以查看此页面以供参考。

于 2009-03-08T00:49:56.683 回答
3

好吧,您以虚线的形式列出了包,并且没有将“.class”放在最后。

<applet code="packagefolder1.packagefolder2.MyApplet" archive="folder1/folder2/MyApp.jar">

</applet>
于 2009-03-08T01:26:45.300 回答
1

我不确定,但你试过这样吗?:

<applet archive="MyApp.jar" code="MyApplet">
于 2009-03-08T00:47:09.950 回答