
こんにちわ。
私は今、windows XP + eclipse 3.1.1(日本語化済)
でswingアプリケーションを作っています。
完成後は、実行可能jarファイルとして配布したいと考えています。
jarファイル内の画像ファイルを読み込んで、トグルボタンの
アイコンに使いたいので、メインクラス内で、
jToggleButton1.setIcon(new ImageIcon(getClass().getClassLoader().getResource("images/transition.jpg")));
という記述をしました。
「ファイル」→「エクスポート」→「jarファイル」
で、実行可能jarファイルを作ったときはちゃんと
画像が読み取れているのですが、
eclipseから直接実行をすると、以下のようなNullPointerException
が発生してしまいます。
java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
at DTT.getJToggleButton1(DTT.java:261)
at DTT.getJPanel5(DTT.java:216)
at DTT.getJScrollPane(DTT.java:203)
at DTT.getJPanel(DTT.java:99)
at DTT.initialize(DTT.java:478)
at DTT.<init>(DTT.java:468)
at DTT.main(DTT.java:458)
(DTTという名前のアプリケーションなのです。。)
jarに出力する場合と、eclipseから直接実行する場合で
記述を変える必要があるのでしょうか?
それともデフォルト作業ディレクトリの指定などを適切に行えば
統一的に扱えるようになるのでしょうか?
なにとぞよろしくお願いします。
No.4ベストアンサー
- 回答日時:
classファイルが見えませんがclassファイルはbinフォルダに作られる設定で宜しいでしょうか。
それならimagesフォルダをsrcフォルダ内に移動してください。再コンパイルすればbinフォルダ下にimagesフォルダがコピーされ、その環境で実行すれば上手くいくと思います。
回答ありがとうございます。
やってみたのですが、よくわかりません。
結局、getResource()がnullを返した場合は
パスを直接指定するようにif文を付けました。
迅速な対応、ありがとうございました。
No.3
- 回答日時:
#1です。
jarファイルをEclipseから利用しようとしたものと極介してしまいました、申し訳ない。
#2にあるrinkun氏の指摘や相対パスのたどり方、パス基点を再確認してみてください。
#あまりお力になれていませんね、すみません。 m(__)m
この回答への補足
なんどもありがとうございます。
>#あまりお力になれていませんね、すみません。 m(__)m
めっそうもございません。一緒に考えてくれる人がいるという
だけで恐れ多いことだと思います。。
No.1
- 回答日時:
おそらくプロジェクトのプロパティなどで参照先のjarファイルとして登録されていないのではないかと。
classpathの設定に問題のjarファイルを追加してあげれば実行できそう。
はずれていたら申し訳ない。
この回答への補足
えーっと、プロジェクトのプロパティで、ライブラリに
JARを追加するという意味でしょうか?
eclipseから直接実行するときは、jarファイルが生成
されていないので、指定しようがないと思うのですが。
すいません。意味がよくわかりません。
あまりeclipseに詳しくないもので。すみません。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java マイクラjavaでForgeを入れたいのですが、インストールした.jarファイルが展開されてしまい中 1 2023/07/28 22:30
- PHP eclipse pleiades phpのインストールについて 1 2023/02/03 17:15
- C言語・C++・C# 至急お願いします。C言語で.imgのファイルを読み込んで1バイトづつ出力するプログラムを作りたいので 3 2023/01/16 22:49
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- UNIX・Linux ubuntuのサーバー(virtual box)が、再起動するとデータが消えてしまいます。 4 2022/04/27 21:29
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- その他(プログラミング・Web制作) Pythonで、データファイルと列名ファイルを1つのファイルにしたいです。 1 2023/07/27 20:29
- アプリ jarを変換する方法 2 2022/06/04 14:26
- UNIX・Linux VScodeでjarファイルを開く方法 1 2022/06/03 17:00
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Eclipse・プロジェクトで、フォ...
-
SVFの設定について:クラスパス...
-
classファイルについて
-
jdbcドライバのjarファイルにク...
-
【Eclipse】パッケージ・エクス...
-
eclipse でclassesフォルダーが...
-
ファイルのパスの取得について
-
”書きこみできません”とエラー...
-
JSP内で外部jsファイルを指定する
-
ResourceBundleクラスの使い方
-
eclipceについて質問です
-
JARファイル・JARコマンドに関して
-
earファイルを展開する方法
-
サーバから落としてきたWebアプ...
-
classファイルが作成されない
-
java クラスファイルとソースコ...
-
Eclipseでデバッグが出来ないエ...
-
JAR内のクラス一覧と、メソッド...
-
コマンドライン引数のワイルド...
-
Ecliseが、きまったときにフリ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipse・プロジェクトで、フォ...
-
classファイルについて
-
SVFの設定について:クラスパス...
-
javaクラスファイルをEclipseで...
-
Eclipse「リフレッシュ」と「ク...
-
eclipse でclassesフォルダーが...
-
earファイルを展開する方法
-
EclipseでHTTP404エラーが出る。
-
java クラスファイルとソースコ...
-
jdbcドライバのjarファイルにク...
-
【Eclipse】パッケージ・エクス...
-
「メイン・マニフェスト属性が...
-
「削除するか、クラスパスの正...
-
「main メソッドを持つクラスが...
-
ResourceBundleクラスの使い方
-
『ClassNotFoundException: org...
-
プログラム実行の際に、「ソー...
-
VisualStudioでC++クラスを追加...
-
EclipseでのJSP・Servlet開発に...
-
サーバから落としてきたWebアプ...
おすすめ情報