dポイントプレゼントキャンペーン実施中!

JAVAを初めて勉強しようとしています。
テキストにしたがって、java_ee_sdk-5_06-windows-ml.exeをインストールし、最初のHello Worldを実行しようとしていますが、エラーが出て進めません。
下のようなエラーが出ます。

C:\>java>javac Test.java
Exception in thread "main" java.lang.NoClassDefFoundError: Test
Caused by: java.lang.ClassNotFoundException: Test.java
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native M
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown S
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Sour
Could not find the main class: Test.java. Program will exit.

根本的に何かが欠けていると思われるのですが、どのような原因が考えられるでしょうか?

A 回答 (10件)

とりあえずちゃんとテキスト読みましょう


最初の
 java>javac Test.java
ですけど、これはjava.exeを実行して出力をjavacファイルにリダイレクトしてます
java Test.java > javac と同等
(java.exeだけはJDKインストール時system32にも置かれるのでPATH通さなくても実行できる)
テキストにこんな間違えたコマンドが載ってるわけはないので
    • good
    • 0

>Exception in thread "main" java.lang.NoClassDefFoundError: Test


>Caused by: java.lang.ClassNotFoundException: Test.java

>Could not find the main class: Test.java. Program will exit.

クラスパスは通っていますか?
zozyさんの回答を参考に環境変数の設定画面に進んだ後で
「PATH」ではなく、「CLASSPATH」の値を編集して
クラスパスをクラスファイルの置いてあるフォルダに通してください。
    • good
    • 0

No7です。


Javaでは、大文字・小文字は厳密に区別されます。(http://www.fk.urban.ne.jp/home/kishida/kouza/kis … より)

実行時のエラーではありませんか?
クラス名とファイル名が、大文字小文字を含めて一致していないと、実行時に上記のエラーが表示されますが・・?

class Test {
  public static void main(String args[]) {
//中略
  }
}

を、たとえば以下のように書いてしまうと・・という意味です。

class Tset { //テストじゃなくTセットになっている
class TEST { //大文字小文字は区別される

参考URL:http://www.tohoho-web.com/java/start.htm#Hello
    • good
    • 0

1.c:の直下にjavaというフォルダを作成する


2.作成したTest.javaを、c:\java\test.javaにコピーまたは移動する
3.コマンドプロンプトを開き、以下の4行を入力する(*****の部分はご自身のC:\Program Files\Javaフォルダをご覧の上、適宜ご修正ください)

path=%path%;C:\Program Files\Java\jdk********\bin;
cd \java
javac Test.java
java Test
    • good
    • 0

少し気になったので書かせて下さい。



>javaというフォルダが、Cのルートではなく、C:\Program Files\の下にあったので、そちらにTest.javaを移動させて、
>C:\Program Files\Java>java>javac Test.java と実行しましたが、結果は同じエラーでした。。。

との事ですが、sekichan2006さんが実際に打ち込んだ文字は何ですか?
C:\Program Files\Java>
までが表示されていて、それ以降に
java>javac Test.java
と打ったという事でしょうか?
それだとエラーが出てしまうと思います。
正しくは、
javac Test.java
だけで良いかと思います。

コマンドプロンプト開き
cd "C:\Program Files\Java"
javac Test.java
java Test
の順でやってみて下さい。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
ご指摘の通りに入力すると、
'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
とエラーになりました。。。
パスが通っていない、ということでしょうか?

お礼日時:2009/01/04 06:46

まずは、これをインストールしましょう(JDKという環境です)


https://cds.sun.com/is-bin/INTERSHOP.enfinity/WF …

以下の手順を行ってください
1)マイコンピュータのアイコンを右クリック
2)プロパティをクリック
3)詳細設定のタグをクリック
4)環境変数のボタンをクリック
5)pathという変数がありまのでそれを編集しましょう
6)すでに書かれている部分の後ろに;を追加してからJDKをインストールしたフォルダの"bin"フォルダのアドレスを追加してください
7)PCを再起動
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
ただ、新たに紹介いただいたバージョンを手順どおりにインストールしましたが、実行結果は同じでした。。。
時間があるときにもう一度全部アンインストールして再試行してみます。

お礼日時:2009/01/04 08:08

コンパイル時にエラーが出ているんですよね?



これ以上は良く判りませんので、他の方の回答を待ちましょう。

m(_ _)m
    • good
    • 0
この回答へのお礼

そうです、コンパイルでのエラーです。何度も回答いただき、ありがとうございました。

お礼日時:2008/12/30 09:45

じゃ、


test.java

c:\java
フォルダに移動させて
C:\>java>javac Test.java
は?
    • good
    • 0
この回答へのお礼

たびたびすみません。
javaというフォルダが、Cのルートではなく、C:\Program Files\の下にあったので、そちらにTest.javaを移動させて、
C:\Program Files\Java>java>javac Test.java と実行しましたが、結果は同じエラーでした。。。

お礼日時:2008/12/30 08:17

「Test.javaの名前でc:\の下に配置しています。


なら、
× C:\>java>javac Test.java
○ C:\>java>javac c:\Test.java
じゃないの?
    • good
    • 0
この回答へのお礼

java>javac c:\Test.java
にしても、同様のエラーが出ます。

C:\>java>javac c:\Test.java
Exception in thread "main" java.lang.NoClassDefFoundError: c:\Test/java
Caused by: java.lang.ClassNotFoundException: c:\Test.java
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: c:\Test.java. Program will exit.

お礼日時:2008/12/30 08:10

ソースは?

    • good
    • 0
この回答へのお礼

Test.javaの名前でc:\の下に配置しています。
ソースの内容は以下の通りです。

import java.io.*;
class Test{
public static void main(String args[]){
System.out.println("Hello Java World.");
}
}

お礼日時:2008/12/30 08:04

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