ここから本文です

JARファイルが実行できません。 EclipseでSwingを使ってGUIのプログラムを作りま...

mon********さん

2015/4/3015:58:18

JARファイルが実行できません。
EclipseでSwingを使ってGUIのプログラムを作りました。

Eclipse上では問題なく動くのですが、実行可能なJARファイルにエクスポートして、このJARファイルをダブルクリックしても何も開かないのです。コマンドプロンプトから実行したところ、以下の様なエラーが出ました。どうすればエラーを出さずにダブルクリックで実行できるようになるのでしょうか?

java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
at Swing4.<init>(Swing4.java:20)
at Swing4$1.run(Swing4.java:41)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour
ce)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

20行目付近は
URL url1 = this.getClass().getClassLoader().getResource("images/emperor2_s.png");
URL url2 = this.getClass().getClassLoader().getResource("images/citizen2_s.png");
final Icon koutei_sIcon = new ImageIcon(url1); //20行目
final Icon simin_sIcon = new ImageIcon(url2);

のようになっています。41行目は添付の画像のとおりです。
HelloWorldのような簡単なプログラムであればJARファイルにエクスポートしても動くので、恐らく画像の扱い方に問題があるのではと思います。

Unknown Source,new ImageIcon,this.getClass,getResource,Swing4.java,jar xvf,jarコマンド

閲覧数:
1,552
回答数:
1

違反報告

ベストアンサーに選ばれた回答

mdw********さん

2015/4/3021:26:40

作成したjarファイルを解凍してみてください。
zipで圧縮したファイルにjarの拡張子を付けているだけなので
お使いの解凍ソフトまたはjdkのjarコマンドで解凍してください。
jarコマンドで解凍する場合のコマンドは jar xvf ****.jar です。

imagesフォルダが含まれていないのではないでしょうか?
その場合にはプロジェクトのsrcフォルダの中にimagesフォルダを
作成してその中に画像ファイルなどを格納してみてください。
src/imagesはEclipseにより自動的にbinの中にコピーされ
jarにエクスポートする際にもデフォルトで含まれるはずです。

質問した人からのコメント

2015/5/1 01:38:35

解凍するのが全くの盲点でした。無事動いたので本当に感謝しています。

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる