0

注:ImageIcon background = new ImageIcon(getClass().getResource("MyImage.jpg")); すべての回答に記載されていることを試しました。

私のプロジェクトは、netbeans IDE の実行を使用して正常に動作します。しかし、「クリーン アンド ビルド」を使用して実行可能 jar にエクスポートすると、ヌル ポインター例外がスローされ、画像を含むフレームが開かれません。(実行可能 jar は「dist」フォルダーにあります)

相対パスを使用した後でも、画像は読み込まれません。

  1. 実行可能jarと同じディレクトリに画像を置きました。(dist)
  2. 画像をlibフォルダに入れました。(dist\lib)
  3. src フォルダーと res フォルダーを作成し、それらのフォルダーにイメージを配置しました。(dist\src & dist\res)

上記のどれも機能しませんでした。

winRar で jar を開き、画像が存在することを確認しました。しかし、実行時にロードされることはありません。誰でも私を助けてもらえますか??

4

1 に答える 1

0

最後に私はそれを理解しました。

ImageIcon background = new ImageIcon(getClass().getClassLoader().getResource("MyImage.jpg"));

クラスローダーがどのように大きな役割を果たしているのか!!

また、ファイル名を正確に取得することも重要です。.JPG IDE で実行されますが、JAR へのエクスポート時に、アクセスしようとしている場合は名前.jpg自体である必要がありますMyImage.jpg

于 2013-08-22T11:13:02.437 に答える