最新閲覧日:

すみません。本当につまらない質問かもしれませんが
コンパイルまではDOS窓でできるんですが。できたCLASS
ファイルを java (できたclassファイル名) を実行しよう
としても、
Exception in thread "main" java.lang.NoClassDefFoundError: (できたファイルの名前)
と表示されてしまい、まったく実行できません。
これはどうしたら実行できるのでしょうか?
なお、最新版のSDKとJava 2 Runtime Environmentはインストールしています。
どうかお願いします。

A 回答 (3件)

1. .classまでクラスファイル名つけてませんか?


2. カレントディレクトリがclassファイルのある場所にあるかまたはクラスパスがclassファイルのある場所に追加されていますか?
3. クラスファイル名間違ってませんか?
4. CLASSPATHを設定した場合、.(現在のディレクトリ)を指定していますか?
5. 2番目の回答者の方と同じです、ファイル名とクラス名一致してますか?

JDKが古いバージョンの物も必要というのはちょっと聞いたことがないですが・・・。

この回答への補足

4でした。ありがとうございました。

補足日時:2001/11/09 18:58
    • good
    • 1

僕も初心者なので、詳しくはわかりませんが。

ファイル名の指定の仕方が間違っているのではないでしょうか?
Exception in thread "main"java.langNoClassDefFoundError;ファイル名
というのは、jvm が 「mainメソッドがないよ」って言っているはずです。
ですから、java コマンドを実行するときは、ファイル名ではなく、mainメソッドの入っているクラス名を指定すればよいのではないでしょうか?

例えば、sample1.java というファイルをつくったとします。
//////////////////////////////////////////////////////////////
//sample1.java
class sample2{
public static void main(String args[]){
System.out.println("Hello World!!");
}
}
///////////////////////////////////////////////////////////////
これを実行する場合、
javac sample1.java
java sample2
としなければなりません。

javac sample1.java
java sample1
は間違いです。ファイル名ではなく、クラス名を指定するのです。
多分、これで間違えたと思うのですが、間違っていたら、ごめんなさい。
それでは、頑張ってくださいね。
    • good
    • 0

個人的な経験なのですが、最新のJDKだけでは確かクラスファイルが足りないはずです。

JDK1.1.8とかJavaの時代のものをダウンロードしてきて、インストール後、CLASSPATHに古いものをJDK1.3のlibのパスの後に追加すれば、きちんと動作するはずですよ。

間違いがありましたらご指摘ください。
ではでは☆
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード


このQ&Aを見た人がよく見るQ&A

このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ