問題タブ [resource-loading]

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.

0 投票する
1 に答える
17 参照

java - .jar は内部リソース イメージを検出しませんが、コンパイルされたプログラムは検出します

Swing UI で使用するためにいくつかの画像をロードしようとしましたが、コンパイルされたプログラムは画像を正しくロードしますが、.jar は画像を見つけられません

まず、リソース ファイルを「リソース ルート」としてマークしました。プロジェクトのレイアウトは次のようになります。

プロジェクトのレイアウトを示します。ソース フォルダーの外側にはリソース フォルダーがあり、その中には問題のリソースを含む images フォルダーがあります。

コンパイル出力レイアウトは次のようになります。

ここに画像の説明を入力

.jar レイアウトは次のようになります。

ここに画像の説明を入力

現在、画像をロードしているコードはguiパッケージ内にあります。ここにあります:

印刷ライン出力は、画像のパスを正しく印刷します

intellij のアイデアから実行してもエラーは発生しませんが、生成されたアーティファクト (管理者特権の有無にかかわらず、cmd から実行した場合) は System.out.println() で NullPointerException を返しますが、間違いなく、そうではありません。エラーの原因は、println を削除しても次の行でクラッシュするためです。

ここに画像の説明を入力

画像をロードするためにこれらを実行しようとしましたが、役に立ちませんでした:

どんな助けでも大歓迎です。

重要な注意:私はWindows 10を使用しています。写真は正しいパス(file.jar/images/buttonClip.png)内にありますが、実行時に.classはそれを見つけられません