2017-04-03 5 views
7

Mon application a été exécutée avec JRE build 9-ea + 163 en transmettant l'indicateur --permit-illegal-access à la machine virtuelle. Maintenant, je veux démarrer l'application avec Java Webstart. Un premier essai avecComment passer l'indicateur Java 9 '--permit-illegal-access' à une application Webstart?

ne fonctionne pas. Je reçois le même InaccessibleObjectException avec module java.base does not "opens java.util" to unnamed module comme sans le drapeau.

Ajout <j2se java-vm-args="--permit-illegal-access" version="9*"/> à l'JNLP ne contribue pas.

Est-ce que le drapeau Webstart soutenir --permit-illegal-access? Puis-je également spécifier l'indicateur dans le fichier JNLP?

BTW, avec Java 9

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

jette un IllegalAccessException et -J--permit-illegal-access ne contribue pas non plus.

P.S .: La définition de la variable d'environnement JAVA_TOOL_OPTIONS à --permit-illegal-access fonctionne, mais n'est pas une solution car les clients ne sont pas accessibles.

+0

Est-ce que cela aide? 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-à-java-web-start-from-html –

+0

Ajout de '' au JNLP ne fonctionne pas. La définition de la variable d'environnement 'JAVA_TOOL_OPTIONS' sur' --permit-illegal-access' fonctionne, mais n'est pas une solution car les clients ne sont pas accessibles. La même chose vaut pour les paramètres de déploiement sur l'ordinateur client. – Miro

Répondre

7

Java Web Start ne prend pas en charge l'option --permit-illegal-access. Les applications JNLP qui doivent rompre l'encapsulation doivent utiliser les options précises, il existe un support pour les deux --add-exports et --add-opens.

+5

Fonctionne pour moi avec la syntaxe correcte décrite dans [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 "'. Je vous remercie! – Miro