Рубрики
Без рубрики

Java – Не удалось найти или загрузить основной класс

– Java – Не удалось найти или загрузить основной класс

Популярное сообщение об ошибке для новых пользователей Java.

Error: Could not find or load main class ClassName.class
Caused by: java.lang.ClassNotFoundException: ClassName.class

1. Без Упаковки

1.1 Рассматривает простой Java Hello World, без пакета.

public class HelloWorld {

    public static void main(String[] args) {

        System.out.println("Hello World");
		
    }
	
}
# Compile Java source code
C:\projects> javac HelloWorld.java

C:\projects> dir
15/04/2019  01:20 PM               425 HelloWorld.class
15/04/2019  01:42 PM               138 HelloWorld.java

# Run Java
C:\projects>java HelloWorld.class
Error: Could not find or load main class HelloWorld.class
Caused by: java.lang.ClassNotFoundException: HelloWorld.class

Чтобы исправить это, запустите имя класса java , без расширения .class .

C:\projects>java HelloWorld
Hello World

2. С Пакетом

2.1 Простой Приветственный мир и пакет это как com.mkyong

package com.mkyong;

public class HelloWorld {

    public static void main(String[] args) {

        System.out.println("Hello World");
		
    }
	
}
# Compile Java source code
C:\projects> javac HelloWorld.java

C:\projects> dir
15/04/2019  01:20 PM               425 HelloWorld.class
15/04/2019  01:42 PM               138 HelloWorld.java

C:\projects>java HelloWorld
Error: Could not find or load main class HelloWorld
Caused by: java.lang.NoClassDefFoundError: com/mkyong/HelloWorld (wrong name: HelloWorld)

2.2 Если пакет определен, классы Java .класс должен располагаться в правильном расположении папки.

Например:

package com.mkyong;

Созданный выше файл класса должен быть помещен в C:\projects\com\mkyong\HelloWorld.class

2.3 Чтобы исправить это , мы можем использовать - d чтобы указать, где размещать сгенерированные файлы классов.

# Compile Java source code
C:\projects> javac -d . HelloWorld.java

C:\projects> dir

15/04/2019  02:01 PM              com
15/04/2019  01:51 PM               161 HelloWorld.java

C:\projects\com\mkyong\HelloWorld.class
C:\projects\HelloWorld.java

2.4 Теперь мы можем запустить вот так java {пакет}.Адский мир

C:\projects>java HelloWorld
Error: Could not find or load main class HelloWorld
Caused by: java.lang.ClassNotFoundException: HelloWorld

C:\projects>java com.mkyong.HelloWorld
Hello World

Рекомендации

Оригинал: “https://mkyong.com/java/java-could-not-find-or-load-main-class/”