【问题标题】:Java applet jnlp deployment giving NoClassDefFoundError and wrong name errorJava 小程序 jnlp 部署给出 NoClassDefFoundError 和错误名称错误
【发布时间】:2012-04-03 19:07:35
【问题描述】:

老实说,我从未部署过小程序,但这似乎令人难以置信的痛苦。 <applet code> 在 chrome 上不起作用,所以我使用 jnlp 希望能度过这个噩梦,但它似乎只会增加我的偏头痛。在 Eclipse 中一切运行良好,但在部署方面。如果我无法解决这个问题,我可能需要一台新计算机哈哈。

开始创建java jar(jar cvf WebGame.jar bin):

然后我创建了如下所示的 JNLP 文件(名为bounce.jnlp):

当我创建我的 html 文件 (Bounce.html) 时,我以为我开始有所收获:

所以我决定上传所有内容以测试它在 chrome 上的工作方式:

看起来我的游戏正在浏览器上加载,但我最终得到了这个:

所以在搞砸了几个小时后,我都是这样的:

如果有人能帮助我,我会非常感激,(我现在买不起新电脑)。

【问题讨论】:

  • 1) 所有这 4 个图像最好用编辑器、命令行或控制台的复制/粘贴文本替换。 2) JNLP 无效。请务必使用JaNeLA 进行检查。

标签: java deployment applet jnlp noclassdeffounderror


【解决方案1】:

我怀疑您的 StartingPoint 类实际上不在 bin 包中,这是给我的提示:

java.lang.NoClassDefFoundException: bin/StartingPoint (wrong name StartingPoint)

这表明您的类在 default 包中(即开头没有包声明)。

尝试将您的 JNLP 更改为

main-class="StartingPoint"

并从bin 目录中创建您的 jar 文件:

$ cd Documents/Java/TheBasics/WebGame/bin
$ jar cvf ../WebGame.jar *

【讨论】:

  • 你不知道我现在有多爱你!非常感谢 beny23!我不知道您现在是否可以/想要帮助我解决这个问题。小程序已启动并正在运行,但它没有我的图像(位于 bin/images/*)并且我的音乐也没有被识别(bin/music/*)。这是我部署小程序的方式还是完全其他的问题?任何帮助将不胜感激,但你已经帮助了我,所以再次感谢!
  • 我怀疑您需要更改代码以从 images/*music/* 加载图像,因为现在您的代码中将没有包含 bin 目录的条目。
猜你喜欢
  • 1970-01-01
  • 2011-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-05
相关资源
最近更新 更多