58

Java9 (JDK9) を使用してDMelt プログラム ( http://jwork.org/dmelt/ ) プログラムを実行しようとしていますが、次のようなエラーが表示されます。

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.python.core.PySystemState (file:/dmelt/jehep/lib/jython/jython.jar) to method java.io.Console.encoding()
WARNING: Please consider reporting this to the maintainers of org.python.core.PySystemState
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

どうすれば修正できますか?スクリプト「dmelt.sh」の最後の行に –illegal-access=permit を追加しようとしましたが (Linux で bash を使用しています)、この問題は解決しませんでした。私はこれに非常にイライラしています。私はこのプログラムを非常に頻繁に、非常に長い間使用していました。JDK9に移行するべきではないかもしれません

4

9 に答える 9

2

この投稿http://bugs.jython.org/issue2582によると、Jython 開発者は jdk9 の実用的なソリューションを持っていません。前の説明は、何をすべきかを理解するのに非常に長いようです。jdk9 が jdk1.4 - 1.8 とまったく同じように動作すること、つまり完全にサイレントであることだけが必要です。下位比較可能性における JVM の強度。JDK9 にオプションを追加することはまったく問題ありませんが、新しい機能によってアプリケーションが壊れることはありません

于 2017-09-16T18:53:05.073 に答える