Java Web Start在没有启用" show console"的情况下不会启动我的.jar。

时间:2014-08-07 09:12:42

标签: java java-web-start jnlp jconsole

如标题所述,我的软件不会启动,除非"显示控制台"在Java设置中选择了选项。我不确定您希望发布什么类型的代码,所以请问。

当我尝试运行它时,会弹出Java对话框,加载软件的进度条会在关闭之前完成。当控制台启动时,软件最终会加载并显示。没有控制台,没有任何反应。

我试图在不同的计算机上运行网络启动,但他们都遇到了同样的问题。控制台没有打印出任何错误消息,所以我没有任何东西可以用来调试问题。

有关该软件的一些信息: 它是一个JavaFX项目,使用Netbeans在OS X上使用Oracle jdk 1.7.0_65编译。它需要完全的安全权限,所有jar(我使用一堆库)都是使用来自可靠供应商的密钥库进行签名的。

修改

我尝试使用以下命令通过控制台启动我的程序:javaws -viewer http://www.website.com/software.jnlp,并且 - 在不启动我的软件的情况下 - 它将以下结果返回给终端:

java.lang.NullPointerException
    at sun.awt.SunToolkit.getSystemEventQueueImplPP(SunToolkit.java:1003)
    at sun.awt.SunToolkit.getSystemEventQueueImplPP(SunToolkit.java:998)
    at sun.awt.SunToolkit.getSystemEventQueueImpl(SunToolkit.java:993)
    at java.awt.Toolkit.getEventQueue(Toolkit.java:1749)
    at java.awt.EventQueue.invokeLater(EventQueue.java:1245)
    at javax.swing.SwingUtilities.invokeLater(SwingUtilities.java:1290)
    at com.oracle.deploy.update.UpdateCheck.updateStateChange(Unknown Source)

这可能有任何帮助吗?

1 个答案:

答案 0 :(得分:1)

对于可能遇到此问题的其他人来说,这就是我的原因:

我有一个在后台运行的线程,一旦完成加载所有资产就会显示该阶段。这使整个事情无法执行,因此我不得不更改代码中的加载逻辑,而不是允许主阶段在UI线程中使用show - 方法。