- 채점
- 런타임 에러
- 런타임 에러 (JavaMain)
Main.java
채점할 때 사용하는 파일명은 Main.java입니다. 따라서, main 메소드는 Main 클래스에 있어야 합니다.
Main.java는 다음과 같이 작성되어야 합니다.
소스 1. Java 소스
아래 모든 런타임 에러는 소스가 소스 1과 같은 형식이 아닐 때 발생합니다.
main class Main
main class Main의 런타임 에러 메시지는 다음과 같습니다.
Error: Could not find or load main class Main
Java는 java Main으로 실행해 채점을 진행합니다. (언어 도움말)
소스 2와 같이 package를 사용하면 main메소드를 찾을 수 없어 런타임 에러가 발생합니다.
소스 2. package를 사용
package를 지우면 런타임 에러를 피할 수 있습니다.
void main
main메소드를 void로 선언하지 않았을 때 발생합니다. 소스 3은 main메소드를 int로 선언했기 때문에, 런타임 에러가 발생합니다.
소스 3. int main을 사용
Error: Main method must return a value of type void in class Main, please define the main method as: public static void main(String[] args)
void main을 사용하면 됩니다.
static main
main메소드가 static이 아닐 때 발생합니다. 소스 4은 main메소드를 static으로 선언하지 않았기 때문에, 런타임 에러가 발생합니다.
소스 4. static으로 선언하지 않은 main
Error: Main method is not static in class Main, please define the main method as: public static void main(String[] args)
main메소드를 static으로 선언해야 합니다.
No main
Main클래스 에서 main메소드를 찾을 수 없는 경우에 발생합니다.
소스 5. main메소드가 없음
Error: Main method not found in class Main, please define the main method as: public static void main(String[] args) or a JavaFX application class must extend javafx.application.Application