皆さん、
Eclipse を使用して Java アプリケーションを開発しています。Maven を使用して、最終的な jar ファイルを作成します。
アプリケーションでは、ボタンにいくつかの画像アイコンを使用しています。インターネット上のいくつかの指示に従って、プロジェクトをクリックして「ソース」ディレクトリを作成しました。ソース ディレクトリに「res」という名前を付け、画像をこのディレクトリに移動しました。
public static ImageIcon getIcon() {
if (isThisJarfile()) {
URL url = this.class.getResources("/res/myicon.png");
return new ImageIcon(url);
}else {
return new ImageIcon("/res/myicon.png");
}
}
これは、アプリが jar ファイルとしてパッケージ化されていない場合に正常に機能します (デバッグに最適)。ただし、maven でパッケージ化すると、イメージが jar ファイルのルート ディレクトリに置かれていることがわかります。次の呼び出しが機能します。
URL url = this.class.getResource("/myicon.png");
私が見落としたステップがあるかどうか疑問に思っています。
画像の pom.xml に特別なことをする必要はなかったことに注意してください。Maven はそれらを自動的にピックアップしました (間違った場所に配置していることを除いて)。
よろしくお願いいたします。
よろしく、ピーター