인터넷상의 대부분의 웹 사이트는 다음과 같이 말합니다.
"
javac
명령을 사용하여.java
파일 을 컴파일 하십시오. 그런 다음 명령을 사용하여 파일을 실행하십시오.java
"
그러나 오늘 나는 Java 프로그램을 실행하지 않고 javac
이상한 결과를 얻었습니다.
파일의 내용은 다음과 같습니다 hello.java
.
public class Myclass {
public static void main(String[] args){
System.out.println("hello world");
}
}
그런 다음 나는 달렸다.
$ javac hello.java
이 오류가 발생합니다.
hello.java:1: error: class Myclass is public, should be declared in a file named Myclass.java
public class Myclass {
^
1 error
그러나 javac
명령없이 실행하면 오류없이 실행되었습니다.
$ java hello.java
hello world
않는 java
명령은 프로그램을 컴파일? 그렇다면 왜 javac
명령이 필요한가?
내 자바의 버전은 다음과 같습니다
openjdk version "12.0.2" 2019-07-16
OpenJDK Runtime Environment (build 12.0.2+10)
OpenJDK 64-Bit Server VM (build 12.0.2+10, mixed mode)
Myclass.java
다음 명령 행에서 다음과 같이 컴파일 javac Myclass.java
한 후 다음과 같이 실행하십시오 java Myclass
.
javac
소스를 JVM 고유의 해석 된 바이트 코드로 컴파일하고 java
명령이 JVM의 ClassLoader 내에로드합니다.