【发布时间】:2010-01-09 05:47:15
【问题描述】:
尽我所能,我无法让 JNLP 文件在本地运行(通过双击)。即使我指定相对于 jnlp 文件的 jar 文件,这似乎也是一个问题。我收到以下错误:
href 字段无效 值:helloworld.jar
即使 JNLP 文件与 helloworld.jar 位于同一文件夹中,也会发生这种情况。我已经进行了搜索,这是一个始终如一的问题,尤其是对于想要将应用程序打包到 CD 上并使用 JNLP 的人来说。 Sun 提供的唯一“解决方案”是通过命令行指定代码库的能力,但这并没有太大帮助。我不明白他们为什么不假设或允许代码库是“。”或“文件://”。 - 我在 jnlp 标记的代码库参数(文件内部)中尝试了这些东西,但没有任何效果。
使用 JNLP 文件对我来说非常方便,因为我不需要担心平台检测、本地库甚至主要的 JOGL jar 文件;我只是简单地添加了这一行,一切都为我完成了:
<extension name="JOGL" href="http://download.java.net/media/jogl/builds/archive/jsr-231-2.0-beta10/webstart/jogl-all-awt.jnlp" />
我希望找到可以做同样事情的东西。如果没有,我可以手动(或使用 Ant)获取 JOGL jar 文件,这没什么大不了的;这只是 JNLP 为我做的事情之一,我真的会想念。
什么是 JNLP 文件的最佳替代品,让我在本地使用(即双击运行)?有什么这么优雅的吗,还是我只需要为 Linux 编写一个 shell 脚本,为 Windows 编写一个批处理文件,然后让 Ant 检测并下载适当的 JOGL jars?
【问题讨论】:
-
如果有其他人比下面的答案更好,请说出来!我仍然很想知道是否可以从本地文件系统运行 JNLP 文件。但是,经过一些研究,我认为这是不可能的,因此我提出了自己的建议;一对脚本(run.bat 和 run.sh),我的 Ant 脚本使用条件标签并下载和解压缩正确的 JOGL jar。我很快就会提交一个包含 Ant 代码的答案。