2017-04-03 27 views
7

通過將--permit-illegal-access標誌傳遞給VM,我得到了使用JRE build 9-ea + 163運行的應用程序。現在我想用Java Webstart啓動應用程序。第一次嘗試如何將Java 9'--permit-illegal-access'標誌傳遞給Webstart應用程序?

javaws -J--permit-illegal-access <JNLP-Url> 

不起作用。由於沒有國旗,我得到了與相同的module java.base does not "opens java.util" to unnamed module

向JNLP添加<j2se java-vm-args="--permit-illegal-access" version="9*"/>並沒有幫助。

Webstart是否支持--permit-illegal-access標誌?

我還可以在JNLP文件中指定標誌嗎?

順便說一句,與Java 9

javaws https://docs.oracle.com/javase/tutorialJWS/samples/deployment/NotepadJWSProject/Notepad.jnlp 

拋出IllegalAccessException-J--permit-illegal-access也沒有幫助。

P.S .:將env變量JAVA_TOOL_OPTIONS設置爲--permit-illegal-access的作品,但不是解決方案,因爲客戶端無法訪問。

+0

這有幫助嗎? http://stackoverflow.com/questions/3494787/enabling-jvm-options-with-java-web-start-jnlp http://stackoverflow.com/questions/1396426/passing-command-line-arguments-to-javaws -java-webstart-executable http://stackoverflow.com/questions/40932530/how-to-pass-unsafe-arguments-to-the-jvm-of-a-java-webstart-application http://stackoverflow.com/questions/22958842/how-to-pass-jvm-arguments-to-java-web-start-from-html –

+0

添加''到JNLP不起作用。 將env變量'JAVA_TOOL_OPTIONS'設置爲'--permit-illegal-access'確實有效,但不是解決方案,因爲客戶端不可訪問。這同樣適用於客戶端計算機上的部署設置。 – Miro

回答

7

Java Web Start不支持--permit-illegal-access選項。需要破解封裝的JNLP應用程序應該使用精確的選項,支持--add-exports--add-opens

+5

適用於我的正確語法,如[JDK-8172986]中所述(https://bugs.openjdk.java.net/browse/JDK-8172986)'java-vm-args =「 - add-opens = java .base/java.util = ALL-UNNAMED --add-exports = java.desktop/sun.awt = ALL-UNNAMED「'。謝謝! – Miro

相關問題