如何通过WebStart启动JavaFx 2.0应用程序?
我使用NetBeans(7.1 RC1版本)实现JavaFx 2.0应用程序,可通过单击jar文件来启动它。现在,我也想通过WebStart来启动它。在这个论坛和其他说明中,我发现了一些提示,提示仅将NetBeans用于此任务,因为NetBeans创建了所有必需的文件。
实际上,NetBeans在项目dist文件夹中都创建了一个JNLP HTML文件和一个引用此JNLP的HTML文件。我可以在浏览器中加载HTML文件。它显示了标题行和启动按钮。单击“启动”按钮将调用预期的对话框“打开launch.jnlp”,但单击“确定”将导致出现异常对话框,显示:
java.lang.RuntimeException: Application launch error
at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:104)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ExceptionInInitializerError
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:140)
at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:27)
at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:97)
...
我需要在NetBeans的项目属性中进行某些设置吗?还是我需要对jar文件或jnlp文件签名?我也尝试过,但是同样发生了异常。
目前,我还没有一个包含该应用程序的网站;我假设在第一次测试时就可以调用自己硬盘上的jnlp文件,对吗?
发生异常的原因可能是什么?为了使WebStart正常工作,我该怎么做?
最佳答案
看来您的Javafx运行时版本不同于sdk版本。尝试卸载JavaFX运行时(从“控制面板”->“卸载程序”),并使用exe文件在JavaFX SDK文件夹中进行安装(或从javafx.com下载其中一个)
附注:使用jnlp或浏览器插件,您无需部署任何程序即可运行常规javafx程序。