Java 프로그래밍 언어에서 오류와 예외가 발생하는 것은 매우 일반적입니다. 그러나 가장 인기 있고 일반적인 오류 중 일부는 프로그래밍을 처음 접하는 프로그래머가 직면하는 경우가 많습니다. 이러한 오류 중에는 Java에서 기본 클래스를 찾거나 로드할 수 없습니다. 일반적으로 발생하는 것 중 하나입니다. 오류는 자바 명령 실패한 메인 클래스를 찾거나 로드하려면 . 프로그램을 실행하려고 할 때 발생합니다. 오류가 발생하면 JVM은 콘솔에 다음 오류 메시지를 표시합니다.
Error: Could not find or load main class ClassName
이 오류는 프로그램 실행 시 클래스 이름을 잘못 지정할 때 주로 발생합니다.
오류 발생 이유
오류가 발생하는 이유는 JVM 기본 클래스 또는 패키지 이름을 로드하지 못했습니다. 다음과 같이 동일한 오류가 발생하는 다른 이유도 있습니다.
- 클래스가 잘못된 패키지에 선언되었습니다.
- CLASSPATH에서 종속성이 누락되었습니다.
- 하위 디렉터리 경로가 정규화된 이름과 일치하지 않습니다.
- 잘못된 디렉토리가 CLASSPATH에 있습니다.
- 애플리케이션의 CLASSPATH가 잘못 지정되었습니다.
- 클래스 이름 인수에 실수를 했을 때도 발생합니다.
오류에 대한 해결책
오류를 방지하거나 해결하려면 절대 패키지 이름이나 클래스 이름을 지정해야 합니다.
패키지 없이
메인 클래스는 main() 메소드가 정의된 클래스입니다. 오류를 생성하고 콘솔에 표시하는 프로그램을 만들어 보겠습니다.
DemoClass.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); } }
산출:
위 프로그램이 성공적으로 컴파일되고 실행되는 것을 볼 수 있습니다. 다음과 같은 오류를 생성해 보겠습니다. 메인 클래스를 찾거나 로드할 수 없습니다 위 프로그램에서. 오류를 생성하고 표시하려면 철자가 틀린 입력하는 동안 클래스 이름 자바 명령 자바 DemoClas .
이는 다음을 지정할 때도 발생합니다. .수업 클래스 이름 끝에 확장명을 붙입니다.
java DemoClass.class
오류를 방지하려면 쓰지 마세요. .수업 사용하는 동안 클래스 이름 끝에 확장명을 붙입니다. 자바 명령.
java DemoClass
클래스를 올바른 폴더에 배치하지 않은 경우에도 오류가 발생합니다. 다음 이미지에서 우리는 내부에 있지 않습니다. 데모 클래스가 위치한 폴더입니다. 이는 다음을 의미합니다. DemoClass.class 파일은 디렉터리 안에 있어야 합니다. C:데모 .
패키지 포함
위 프로그램에서 다음과 같은 패키지를 생성해 보겠습니다. com.javatpoint . 이는 다음 Java 프로그램을 컴파일할 때 .class 파일이 C:democomjavatpointDemoClass.class .
DemoClass.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 명령에서 패키지 이름을 포함한 전체 클래스 이름을 사용해야 한다는 점을 기억하십시오.