我的 java Web 启动应用程序仅在设置详细时启动
My java web start application only starts when verbose is set
我有一个 java 网络启动应用程序,我尝试通过
启动
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>
我激活了跟踪和日志输出,发现发生异常:
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[=10=]0(Unknown Source)
at com.sun.javaws.Main.run(Unknown Source)
at java.lang.Thread.run(Thread.java:745)
然后我找到了这个页面:
https://bugs.openjdk.java.net/browse/JDK-8134475
当我激活 java 浏览器内容时(Java 控制面板 > 安全选项卡 > select 复选框 "Enable content for browser and Web Start application")。
然后应用程序启动了...
但问题是:我不知道为什么!
我也有这个问题(看我的评论)
我通过更新 Java 解决了这个问题,即重新安装 Java。文件 C:\ProgramData\Oracle\Java\java.settings.cfg
已重新创建,这个新的 java 安装可以再次正确打开 Web 启动应用程序。虽然旧版本仍然有同样的错误。
使用 Java 9 更新 Java 后,我需要在 Java 控制面板的安全选项卡中 "Enable Applets and Web Start in the browser"。
我有一个 java 网络启动应用程序,我尝试通过
启动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>
我激活了跟踪和日志输出,发现发生异常:
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[=10=]0(Unknown Source)
at com.sun.javaws.Main.run(Unknown Source)
at java.lang.Thread.run(Thread.java:745)
然后我找到了这个页面: https://bugs.openjdk.java.net/browse/JDK-8134475
当我激活 java 浏览器内容时(Java 控制面板 > 安全选项卡 > select 复选框 "Enable content for browser and Web Start application")。 然后应用程序启动了...
但问题是:我不知道为什么!
我也有这个问题(看我的评论
我通过更新 Java 解决了这个问题,即重新安装 Java。文件 C:\ProgramData\Oracle\Java\java.settings.cfg
已重新创建,这个新的 java 安装可以再次正确打开 Web 启动应用程序。虽然旧版本仍然有同样的错误。
使用 Java 9 更新 Java 后,我需要在 Java 控制面板的安全选项卡中 "Enable Applets and Web Start in the browser"。