プロジェクトをRunnable Jarとしてエクスポートしようとしましたが、プロジェクトのパスから直接画像にアクセスしようとしていたため、リソースがロードされませんでした。例えば:私は、Eclipse自体からプロジェクトを実行しましたが、私は画像がjarファイルに含まれていなかったことに気づいたときにJava:リソース内の画像にアクセスできない
ImageIcon icon = new ImageIcon("resources/icon.png");
これが働くだろう。だから研究した後、私は、ソースフォルダを作成し、それらの中に画像/テキストファイルを入れ、次にそれらにアクセスするためにgetClass()。getResource()を使う必要があることを知りました。しかし、これを行うと、URLは常にnullとして返されます。
Test
---src
---resources
---icon.png
---config
---file.ini
そして、ここにicon.pngとにアクセスしようとすると、私にはNullPointerExceptionを与えているコードです:また
ImageIcon icon = getClass().getResource("/resources/icon.png");
参考のために、これは私のプロジェクトエクスプローラがどのように見えるか
です私も試しました:
ImageIcon icon = getClass().getClassLoader().getResource("resources/icon.png");
しかし、それはまた、NullPointerExc eption。私は多くのソリューションをオンラインでチェックしましたが、どれも私のために働くようには見えませんでした。 .iniファイルにもアクセスできる必要があることに注意してください。イメージ用にしか機能しないソリューションでは私の問題は完全に解決されません。どんな助けでも大変感謝します。
、icon.pngはどこですか?あなたはあまりにも瓶の構造を投稿できますか? – alexbt
リソースは/ srcの下のフォルダとして移動する必要があります。 – basic
'' /icon.png ''を試してください。または、そのパスのjarファイルで7zip、WinZipなどで調べてください。先頭の '/'がなければ、パスはgetResourceを行うクラスのパッケージパスからの相対パスになります。 –