我有一个java web start应用程序,我尝试通过
启动javaws.exe https://localhost:8888/myApplication/myApplication.jnlp
没有任何反应(没有错误消息;我看不到任务列表中没有进程)。
如果我通过
启动它javaws.exe -verbose https://localhost:8888/myApplication/myApplication.jnlp
应用程序启动。
我也可以在使用
时启动应用程序javaws.exe -viewer https://localhost:8888/myApplication/myApplication.jnlp
然后从 java缓存查看器启动应用程序。
有什么区别,可能会在详细模式下或通过查看器触发应用程序运行?这是我的jnlp文件:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="https://localhost:8888/myApplication" href="myApplication.jnlp">
<information>
....
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.8.0_60+" href="http://java.sun.com/products/autodl/j2se" max-heap-size="500m" initial-heap-size="250m"/>
<!-- some jars are referenced -->
<property name="sun.java2d.d3d" value="false" />
</resources>
<resources os="Windows">
<nativelib href="mylib.jar" download="eager" />
</resources>
<application-desc main-class="myClass">
<argument>-initLogging</argument>
<argument>SETPROPERTYjavax.net.ssl.trustStore</argument>
<argument>_UNDEFINED_</argument>
<argument>SETPROPERTYjavax.net.ssl.trustStoreType</argument>
<argument>_UNDEFINED_</argument>
<argument>SETPROPERTYjavax.net.ssl.trustStorePassword</argument>
<argument>_UNDEFINED_</argument>
<argument>-locale</argument>
<argument>_UNDEFINED_</argument>
<argument>-serviceHost</argument>
<argument>_UNDEFINED_</argument>
<argument>-serviceProtocol</argument>
<argument>_UNDEFINED_</argument>
<argument>-servicePort</argument>
<argument>_UNDEFINED_</argument>
<argument>-trustStrategy</argument>
<argument>_UNDEFINED_</argument>
</application-desc>
</jnlp>
答案 0 :(得分:2)
我激活了跟踪和日志输出,发现发生了异常:
java.io.FileNotFoundException: C:\ProgramData\Oracle\Java\java.settings.cfg (Das System kann den angegebenen Pfad nicht finden)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at java.io.FileReader.<init>(FileReader.java:72)
at com.sun.deploy.config.WinPlatform.readSystemConfig(Unknown Source)
at com.sun.deploy.config.WinPlatform.getSponsorOffersDisabledSettings(Unknown Source)
at com.sun.deploy.config.ClientConfig.getSponsorOffersDisabledSettings(Unknown Source)
at com.sun.deploy.panel.AdvancedProperties.saveSponsorOfferingSettings(Unknown Source)
at com.sun.deploy.panel.ControlPanel.apply(Unknown Source)
at com.sun.deploy.panel.ControlPanel.<init>(Unknown Source)
at com.sun.deploy.panel.ControlPanel.main(Unknown Source)
at com.sun.javaws.Main.launchJavaControlPanel(Unknown Source)
at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
at com.sun.javaws.Main.access$000(Unknown Source)
at com.sun.javaws.Main$1.run(Unknown Source)
at java.lang.Thread.run(Thread.java:745)
然后我找到了这个页面: https://bugs.openjdk.java.net/browse/JDK-8134475
当我激活java浏览器内容时(Java控制面板&gt;安全选项卡&gt;选择复选框&#34;为浏览器和Web Start应用程序启用内容&#34;)。 然后应用程序开始......
但问题是:我不知道为什么!
答案 1 :(得分:1)
我也有问题(请参阅我的评论My java web start application only starts when verbose is set)
我通过更新Java解决了这个问题,即重新安装Java。文件C:\ProgramData\Oracle\Java\java.settings.cfg
再次创建,这个新的Java安装可以再次正确打开Web启动应用程序。虽然旧版本仍然存在相同的错误。
答案 2 :(得分:0)
使用Java 9更新Java后,我需要在Java控制面板的安全选项卡中“在浏览器中启用Applet和Web Start”。