実行時のエラー

プログラムを実行した時にも、エラーメッセージが表示されることがあります。
プログラムに書いてあるとおりに実行しようとしたけれど、 不都合が生じました――という場合です。

java.lang.NoClassDefFoundError

page-1-tips-x1.jpg

MyName/java というクラスが見つからないというメッセージです。
プログラムの実行をする場合にはクラス名を指定します。 「 .java 」を付けてはいけません。

クラス名を間違えた場合もこのメッセージが表示されます。

java.lang.NoClassDefFoundError (その2)

page-1-tips-x2.jpg

クラス名のつづり(大文字と小文字の区別)が間違っている場合のメッセージです。

java.lang.NoClassDefFoundError (その3)

page-1-tips-x22.jpg

カレントディレクトリにクラスファイルがあり、 コマンドラインの指定も正しいのに、クラスが見つからない。
-cp . 」オプションを指定すると正常に実行される。 (ウィンドウは実際には、画面の左上隅に表示されます。)
また、(少し乱暴ですが)環境変数 CLASSPATH をクリアすれば、「 -cp . 」オプションなしでも正常に実行される。

クラスパスにカレントディレクトリを含めていないためです。 クラスパスの設定を参照してください。

メソッド定義の間違い

第1.1節「文字列を表示するプログラム」の6行目、 あるいは第1.2節「氏名を表示するウィンドウ」の17行目の

public static void main(String[] args) {
に間違いがあると、上記のようなメッセージがでます。

ウィンドウが表示されない

第1.1節「文字列を表示するプログラム」の15行目、 あるいは第1.2節「氏名を表示するウィンドウ」の14行目の

frame.setVisible(true);
を書き忘れると、ウィンドウが表示されず、プログラムの実行が 終了してしまいます。

Top Page
更新日:2012/04/02