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