Java プログラミング言語では、エラーや例外が発生することがよくあります。しかし、最も一般的で一般的なエラーのいくつかは、プログラミングに慣れていないプログラマーがよく直面します。これらのエラーの中には、 Java でメインクラスが見つからないかロードできませんでした。 は通常発生するものの 1 つです。このエラーは、 Javaコマンド 失敗した メインクラスを検索またはロードするには 。これはプログラムを実行しようとすると発生します。エラーが発生すると、JVM はコンソールに次のエラー メッセージを表示します。
Error: Could not find or load main class ClassName
このエラーは主に、プログラムの実行時にクラス名を誤って指定したときに発生します。
エラーが発生する理由
エラーが発生する理由は、 JVM メインクラスまたはパッケージ名のロードに失敗します。同じエラーが発生する理由は他にもいくつかあります。次のとおりです。
- クラスが間違ったパッケージで宣言されています。
- CLASSPATH に依存関係がありません。
- サブディレクトリのパスが完全修飾名と一致しません。
- CLASSPATH 上に間違ったディレクトリがあります。
- アプリケーションの CLASSPATH の指定が間違っています。
- クラス名の引数を間違えた場合にも発生します。
エラーの解決策
エラーを回避または解決するには、絶対パッケージ名またはクラス名を指定する必要があります。
パッケージなし
メインクラスとは、main()メソッドが定義されているクラスです。エラーを生成してコンソールに表示するプログラムを作成してみましょう。
デモクラス.java
public class DemoClass { public static void main(String[] args) { System.out.print('Enter a string: '); //using console to input data from user String name = System.console().readLine(); System.out.println('You have entered: '+name); } }
出力:
上記のプログラムが正常にコンパイルされ、実行されることがわかります。というエラーを生成してみましょう メインクラスが見つからないかロードできませんでした 上記のプログラムで。エラーを生成して表示するには、次のようにします。 スペルミス クラス名を入力しながら ジャワ 指示 Java デモクラス 。
を指定した場合にも発生します。 。クラス クラス名の末尾に拡張子を付けます。
java DemoClass.class
エラーを回避するには、次のように書かないでください。 。クラス を使用するときにクラス名の末尾に拡張子を付けます。 ジャワ 指示。
java DemoClass
このエラーは、クラスを正しいフォルダーに配置しない場合にも発生します。次の画像では、私たちは内部にはいません デモ クラスが配置されているフォルダー。それは、 DemoClass.class ファイルはディレクトリ内に存在する必要があります C:デモ 。
パッケージあり
上記のプログラムで、という名前のパッケージを作成しましょう。 com.javatpoint 。つまり、次の Java プログラムをコンパイルすると、.class ファイルが内部に生成されます。 C:democomjavatpointDemoClass.class 。
デモクラス.java
package com.javatpoint; public class DemoClass { public static void main(String[] args) { System.out.print('Enter a string: '); //reading a string from the user String name = System.console().readLine(); System.out.println('You have entered: '+name); } }
出力:
クラスがパッケージ内にある場合は、java コマンドでパッケージ名を含む完全なクラス名を使用する必要があることに注意してください。