2012-02-04 47 views
1

私はちょうどjavaを学び、本をフォローしています。エラー:メインクラスを見つけられないか読み込めませんでした。Hello2

私はプログラムをテキストエディタで作成し、cmdでコマンドを実行しています。

私はjavacを介して1つのプログラムを遵守し、javaで問題なく実行しました。 (Hello) 次に、ファイルHello2.javaという名前のクラスにコメントを追加するように変更しました。私は問題なくコンパイルしましたが、実行時にこのエラーが表示されます。メインクラスHello2を見つけることができませんでした。

環境変数にclasspathとpathが正しく設定されています。

アイデア?

UPDATE

Hello.java

public class Hello { 
     public static void main(String[] args) { 
      System.out.println("Hello, world!"); 
     } 
    } 

Hello2.java

//Filename Hello2.java 
//Written by 
//Written on 

public class Hello2 { 
    public static void main(String[] args) { 
     System.out.println("Hello, world!"); 
    } 
} 

/*This class demonstrates the use of the println() method to print the message Hello, world! */ 
+2

とディレクトリを以下に保存されている場合は、Windowsのクラスパスセパレータはすなわち;

セミコロンであること 注なかったですファイルの内部でクラスの名前を変更しますか? –

+0

ここにあなたのクラスを提供すると、誰もが簡単にできるようになります。 –

+0

@ user1152552:私のクエリの更新???助けが必要ない場合は教えてください。 –

答えて

2

私は私の問題の解決策を見つけました。私はそれがコードの問題ではないことを知っています。しかし、私がしたことは、システム変数からCLASSPATHを削除したことです。今のところはすべて動作しています。

多くの方々のご意見をいただき、ありがとうございます。

1

あなたは、ファイルの名前を変更したときに、あまりにも公共のクラスの名前を変更する必要があります。したがって、ファイルがHello2.javaと呼び出された場合、そのクラスはHello2であり、Helloではありません。

0

以下のようなHello2.javaファイルがあると思います。

class Hello { 
    public static void main (String args[]) { 
    System.out.println("Hello"); 
    } 
} 

class Hello2 { 
    public static void main (String args[]) { 
    System.out.println("Hello"); 
    } 
} 

に変更し、それを変更はclass Hello2代わりのclass Helloです。

注::常にクラス名とファイル名は同じである必要があります。

Good Luck !!!あなたはステップの下に

アップデート1

をやっています?

  1. こんにちは
  2. 名前の変更Hello.java Hello2.java
  3. するためにJavaで実行します
  4. 名前の変更クラス名すなわちclass Helloclass Hello2
  5. コンパイルjavacのHello.javaでHello.java
  6. を書きましたjavac Hello2.java
  7. java Hello2

私はあなたがいないと信じていますステップ6 &ステップ5の後にステップ7を実行してください。確認してください。

+0

私はすでにそれに応じて変更して、そのエラーが発生しました。さらに、私がjava Hello(動作した1番目のもの)を実行したときに、今、同じエラーを返します。 – ultra99

+0

質問を更新し、 'Hello2.java'と' Hello.java'ファイルのJavaコードを提供します。私は両方が必要です... –

+0

...適切なクラス名で 'javac'と' java'を呼び出す必要があります - すべてが一貫している必要があります – DNA

0

クラスパスを正しく設定してもよろしいですか?なぜjava -cpを実行しないでください.classファイルのディレクトリこんにちは?それでも動作しない場合は、完全なスタックトレースをアップロードしてください。

+0

こんにちは、私はシステムからJavaをアンインストールし、それを再インストールしました。コンパイル済みのJavaファイルをすべて削除しました。また、CLASSPATHとPATHを変数に入れましたが、私はまだ同じエラーが発生します。しかし、 "java -cp。Hello"を実行した後、出力が機能しました!ですから、設定やシステムに何か問題があるかどうか、あるいは毎回-cpコマンドを実行しなければならないのかどうかわかりません。 – ultra99

+0

java -cpを実行したときとまったく同じようにclasspathシステム変数を入力しましたか? – Ran

+0

はい。私はこれと一緒に行きました:C:\ mywork> set path =%path%; C:¥Program Files¥Java¥jdk1.5.0_09¥bin – ultra99

0

.classファイルの場所をクラスパスに追加する必要があります。したがって、現在のフォルダにある場合は、.をクラスパスに追加します。あなたのクラスファイルがHello2プログラム名 d:\sample

  1. java -cp d:\sample Hello2
  2. java -cp . Hello2
関連する問題