問題タブ [module-path]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Gradle に -cp の代わりに --module-path を使用させるにはどうすればよいですか?
私は比較的単純なモジュラープロジェクトを持っており、ドキュメントやさまざまな回答や記事で見つけたすべてのオプションをすでに設定しています。 Eclipseのクラスパス? その他。
モジュールが見つからないという例外が発生します。
この例外は、gradle の application:run タスクを介してアプリケーションを実行している場合にのみ発生します。IntelliJ で実行するか、Badass JLink プラグインによって生成されたランタイム イメージを使用すると、すべて正常に実行されます。何時間も手作業でコマンドラインをデバッグおよび構築した後、正しく起動されたプログラムとgradleが行うことの違いは、Gradleが生成を主張している間、他のすべてが --module-path オプションを使用してプログラムを起動することであることがわかりました。 build.gradle ファイルで何をしても、次のコマンドライン:
私のgradleファイルには以下が含まれています:
ルート ファイル:
クライアント プロジェクト (アプリケーション):
どうすれば(最終的に)gradleに -cp ではなく --module-path を使用するように指示できるかについてのアイデアはありますか?!
java - Windows エクスプローラーがファイル/モジュールの存在を示しているにもかかわらず、Java.exe が突然ファイル/モジュールを見つけられないのはなぜですか?
奇妙な問題が発生しています。似たようなことを見た人はいますか?
ほぼ 1 年間、Windows プラットフォーム (Server 2012) 上で正常に動作している Java/JavaFX デスクトップ アプリケーションがあります。
最近、アプリケーションを別の Windows プラットフォーム (Server 2019、仮想マシン) に移動しました。
アプリは共有ドライブにインストールされ、1 日に数回起動されます。最初は正常に実行されますが、ある時点で起動しなくなります。
コマンドラインは次のとおりです。
java -p WolfToolkit.jar;WolfToolkit_mods -m com.mycompany.wolftoolkit/com.mycompany.start.StartGUI
WolfToolkit_mods は、必要なモジュールの jar を含むフォルダーです。起動エラーが発生すると、Java.exe はさまざまな必要なモジュールが見つからないことを報告します。多くの診断テストの後、Windows エクスプローラーが正しいコンテンツを表示していても、Java.exe は WolfToolkit_mods フォルダー内の jar ファイルを検出できなくなったようです。
フォルダ WolfToolkit_mods を WolfToolkit_mods2 にコピーし、コマンドを
java -p WolfToolkit.jar;WolfToolkit_mods2...
その後、アプリは正しく起動します。
jar ファイルの 1 つだけを WolfToolkit_mods に再コピーして元のコマンドを使用すると、そのファイルだけが表示されます。すべてのファイルが再コピーされた場合、アプリは正しく実行されます。
つまり、Java が WolfToolkit_mods を空であると突然見なし、各 jar ファイルがコピーされたときにのみ検出するかのような動作になります。 一方、Windows では問題は見られません。まれに、Java.exe が突然、WolfToolkit.jar が「モジュール形式が認識されない」という報告を開始することにも言及する必要があります。繰り返しますが、ファイルを再コピーすると問題が解決します。
これが何であるか、または診断する方法についてのアイデアはありますか? ありがとう。
Windows Server 2019 標準 v10.0
JVM: OpenJDK 64 ビット サーバー v11.0.10+9
jvm - Launch4j の JVM 引数
私はlaunch4jを介して.jarファイルをパッケージ化し、JVM引数セクションを介していくつかの引数を渡しています。--module-path
引数に自分のコンピューターに対する相対パスが含まれている場合、別のデバイスで使用すると壊れますか? 以下の引数を使用しています。
--module-path /users/home/javafx-sdk-11.0.2/lib --add-modules javafx.controls,javafx.fxml
また、ライブラリを jar にパッケージ化または抽出しても問題はありませんか? または、代わりにそれらを別のフォルダーにコピーする必要がありますか? ライブラリの取り扱い