编程语言
首页 > 编程语言> > Java Webstart在启动应用程序之前停止

Java Webstart在启动应用程序之前停止

作者:互联网

我们的webstart应用程序(不是applet)遇到了奇怪的启动问题.

启动应用程序会显示应用程序启动屏幕,但javaws进程会在对话框,java控制台或日志文件中没有显示任何错误消息后立即终止.似乎javaws在实际启动实际应用程序之前就停止了.
用户是否尝试从桌面快捷方式或从网页启动应用程序无关紧要.
在没有webstart的本地计算机上使用javaw运行时,相同的应用程序没有任何问题.

应用程序是签名应用程序(真实证书,而不是自签名应用程序),用户可以在桌面上使用应用程序的快捷方式. jnlp定义应用程序可以脱机运行,并且使用timeout -option进行update-check.服务器端使用jnl-servlet来提供正确的jar版本.

这个问题并不是每次都会发生,但如果启动失败就像这样一次,很可能(我们已经观察到大约90%的确定性)后续启动也会失败.重新启动计算机似乎没有帮助.该问题仅限于少数计算机.大多数用户(98%)没有这个问题.

所有失败的系统都在运行Windows 7 Pro. Java版本可能会有所不同,但一个例子是64位Java 1.8.0_60,Win7Pro,64位intel-i3处理器.

造成这类问题的原因是什么?任何有关解决问题的帮助都非常感谢.特别是因为似乎没有任何错误消息可用于帮助查明问题.

解决方法:

我有1.8.0_60的问题,当在JNLP文件的doctype中引用每个URL时,似乎强制DTD验证. Webstart尝试下载DTD,没有互联网连接,应用程序无法启动.这在1.8.0_51中不是问题.

作为解决方法,我们从JNLP中删除了doctype.

<!DOCTYPE jnlp PUBLIC "-//Sun Microsystems, Inc//DTD JNLP Descriptor 6.0//EN" "http://java.sun.com/dtd/JNLP-6.0.dtd">

标签:java,java-web-start,jnlp
来源: https://codeday.me/bug/20190711/1433824.html