画像を読み込んでアイコン付きのボタンを作成するアプリケーションがあります。IDE から起動した場合は問題なく動作しますが、エクスポートされた jar ファイルから起動すると、イメージのフェッチ エラーが発生します。
画像の場所 :
+Project
-Source Packages
-Tools
-start.jpg
使用されるコード:
static final String STARTIMAGE = "/Tools/start.JPG";
public static JButton createStartButton() {
Image img = Toolkit.getDefaultToolkit().getImage(GUITools.class.getResource(STARTIMAGE));
JButton b = new JButton("",new ImageIcon(img));
b.setPreferredSize(smallButton);
b.setMaximumSize(smallButton);
b.setMinimumSize(smallButton);
return b;
さて、最も奇妙なことは、別の画面でボタンがまったく同じ方法で作成され、これが正常に機能することです... コード:
static final String PREVIOUSIMAGE = "/Tools/previous.gif";
public JButton createPreviousButton(){
Image img = Toolkit.getDefaultToolkit().getImage(getClass().getResource(PREVIOUSIMAGE));
JButton b = new JButton("Previous",new ImageIcon(img));
b.setPreferredSize(dimensionButton);
b.setMaximumSize(dimensionButton);
b.setMinimumSize(dimensionButton);
return b;
}
唯一の違いは一方が静的であることですが、他方のように非静的にしても機能しません。
この良いトピックを含め、このフォーラムや他のサイトで見つけたすべてを試しました。
jar ファイルに画像をバンドルする方法 (トピックの最後に生成された URL は単に「null」です)
何も機能していないようです...助けてください!
ありがとう!