Java
 Computer >> コンピューター >  >> プログラミング >> Java

解決方法Javaでメインクラスパッケージを検索またはロードできませんでしたか?


Javaプログラムを作成したら、javacコマンドを使用してコンパイルする必要があります。これにより、コンパイル時エラーが発生したことが示されます(存在する場合)。

それらを解決し、プログラムの成功を完全にコンパイルすると、クラス名と同じ名前の実行可能ファイルが、現在のフォルダーに .classで生成されます。 拡張機能。

次に、javaコマンドを次のように使用して実行する必要があります-

java class_name

実行中に、JVMが指定された名前の.classファイルを見つけられない場合、実行時エラーが発生し、「メインクラスが見つかりませんでした。またはメインクラスをロードできませんでした」というエラーが-

D:\sample>java Example
Error: Could not find or load main class Example
Caused by: java.lang.ClassNotFoundException: Example

解決策

このエラーを回避するには、現在のディレクトリにある.classファイルの絶対(パッケージを含む)名(名前だけ)を指定する必要があります。

このエラーが発生する可能性のあるシナリオは次のとおりです-

間違ったクラス名 −間違ったクラス名を指定した可能性があります。

class Example {
   public static void main(String args[]){
      System.out.println("This is an example class");
   }
}

エラー

D:\>javac Example.java
D:\>java Exmple
Error: Could not find or load main class Exmple
Caused by: java.lang.ClassNotFoundException: Exmple

解決策 −これでは、クラス名が誤ってスペルト小麦になっているため、修正する必要があります。

D:\>javac Example.java
D:\>java Example
This is an example class

間違ったケース −同じ場合のクラスの名前を指定する必要がありますExample.javaはexample.javaとは異なります。

class Example {
   public static void main(String args[]){
      System.out.println("This is an example class");
   }
}

エラー

D:\>java EXAMPLE
Error: Could not find or load main class EXAMPLE
Caused by: java.lang.NoClassDefFoundError: Example (wrong name: EXAMPLE)

解決策 −この場合、クラス名の大文字と小文字が間違っているため、装飾する必要があります。

D:\>javac Example.java
D:\>java Example
This is an example class

間違ったパッケージ −パッケージに.classファイルを作成し、パッケージ名なしまたは間違ったパッケージ名で実行しようとした可能性があります。

package sample;
class Example {
   public static void main(String args[]){
      System.out.println("This is an example class");
   }
}

エラー

D:\>javac -d . Example.java
D:\>java samp.Example
Error: Could not find or load main class samp.Example
Caused by: java.lang.ClassNotFoundException: samp.Example

解決策 −このシナリオでは、間違ったパッケージの名前について言及しました。実行中に、.classファイルが存在する正しいパッケージ名を-

として指定する必要があります。
D:\>javac -d . Example.java
D:\>java sample.Example
This is an example class

.class拡張子を含める −ファイルの実行中に、プログラムに.class拡張子を含める必要はなく、クラスファイルの名前を指定するだけです。

エラー

D:\sample>java Example.class
Error: Could not find or load main class Example.class
Caused by: java.lang.ClassNotFoundException: Example.class

解決策 −拡張子 .class プログラムの実行中は必要ありません。

D:\sample>java Example
This is an example class

  1. エラーの修正JavaSEランタイム環境が見つかりませんでした

    コマンド「Java-Jarxxxx.jar」を使用するなど、コマンドプロンプトからJava .jarファイルを開こうとすると、次のエラーメッセージが表示される場合があります。 Error: opening registry key ‘Software\JavaSoft\JRE’ Error: could not find java.dll Error: Could not find Java SE Runtime Environment. これは、以下を含むがこれらに限定されないいくつかの要因が原因である可能性があります。 破損したレジストリ 環境変数にJavaパスがありません 移動中

  2. 「Mscoree.dll が見つかりませんでした」エラーを解決する方法

    Mscoree.dll が見つかりません エラーは、Windows のすべてのバージョンに影響を与える非常に厄介で一般的な問題です。幸いなことに、次の手順に従えば、非常に簡単に修正できる問題です: Mscoree.dll とは? Mscoree.dll はダイナミック リンク ライブラリです Windows 用の .NET フレームワークで使用される (.dll) ファイル。このファイルは、.NET プログラミング言語でコーディングされたプログラムが機能するために使用されます。コンピューターにこのフレームワークがない場合、このエラーが表示されます。 これは、Mscoree.dll エラ