먼저 바탕 화면에서 시작->실행->cmd를 입력하고 Enter 키를 눌러 Windows 명령줄을 입력합니다. 그림과 같이 화면으로 들어갑니다.
현재 기본 디렉터리는 C 드라이브의 Users 폴더 아래에 있는 Administrator 폴더임을 알 수 있습니다. 일반적으로 우리는 현재 디렉토리를 변경하는 데 익숙합니다. Windows에는 디스크 파티션이 있으므로 E 드라이브와 같은 다른 디스크로 이동하려는 경우 몇 가지 방법이 있습니다.
1. pushd path 명령을 입력합니다. (이 명령은 현재 디렉터리를 원하는 기존 경로로 설정할 수 있습니다.)
2. e: 명령을 입력하여 e 드라이브로 전송한 다음 cd를 입력하여 원하는 알려진 경로로 전송합니다.
그림과 같이:
Windows 명령줄에서 javac, java, javap 및 기타 명령을 사용하려면 현재 컴퓨터에 jdk가 설치되어 있어야 하며 환경 변수 경로에 jdk bin 디렉터리를 추가해야 합니다. 이것은 말할 필요도 없습니다. 그럼 javac, java, javap를 어떻게 사용하는지 살펴보겠습니다.
1. 자바
javac는 .java 파일을 컴파일하는 데 사용됩니다. 명령줄에서 javac를 직접 입력하면 javac 명령을 사용하라는 프롬프트 정보가 많이 나오는데, 자주 사용되는 것들만 알고 있습니다.
javac -d 대상 디렉터리 src파일
1. -d destdir은 컴파일된 .class 파일을 저장할 경로를 지정하는 데 사용됩니다. (이 옵션을 생략하면 기본적으로 현재 디렉토리에 .class 파일이 생성되고, 패키지 폴더는 생성되지 않는다. 현재 디렉토리는 "."로 표시 가능, 즉 javac -d . srcFile)
참고: 컴파일된 .class 파일의 경로를 지정하기 위해 -d 옵션을 추가하는 것 외에 가장 큰 차이점은 소스 파일의 첫 번째 줄에 있는 package 키워드 아래의 패키지 이름을 사용하여 해당 폴더 아래에 폴더를 생성할 수 있다는 점입니다. 현재 경로.
2. srcFile은 소스 파일 .java 파일의 경로입니다.
예를 들면 다음과 같습니다. 경로가 E:/test/JavacTest.java인 간단한 Java 클래스가 있습니다.
다음과 같이 코드 코드를 복사합니다.
패키지 com.stopTalking.test 공개 클래스 JavacTest {
공개 정적 무효 메인(String[] args) {
바이트 a = 5;
짧은 b = 6;
System.out.println("JavacTest [a=" + a + ", b=" + b + "]");
}
}
현재 경로 아래에 javac JavacTest.java를 입력하면 그림과 같이 JavacTest.class 파일이 현재 경로 아래에 생성됩니다.
참고: JavacTest.java는 첫 번째 줄에 패키지가 표시된 Java 파일입니다. 현재 하드 디스크의 해당 디렉터리는 해당 패키지 이름과 일치하지 않으므로 java com.stopTalking.test를 실행할 때 찾을 수 없습니다. JavacTest.java.
javac d .JavacTest.java를 입력하면 생성된 JavacTest.class는 그림에 표시된 대로 현재 디렉터리에 생성된 패키지 파일에 있습니다.
2. 자바
현재 우리는 이 클래스를 실행하려고 합니다. 대부분의 교과서에서는 Java JavacTest를 사용하여 직접 실행할 수 있지만 다음 오류가 발견되었습니다.
이는 대부분의 교과서가 기본 패키지 이름을 가진 클래스를 사용하기 때문입니다. 즉, 소스 파일의 첫 번째 줄에는 패키지 이름이 지정되지 않습니다. 클래스를 사용하려면 정규화된 클래스 이름을 사용해야 한다는 것을 알고 있습니다.
따라서 명령줄에 java com/stopTalking/test/JavacTest를 입력하면 올바른 결과를 볼 수 있습니다.
요약: 간단한 java 명령을 사용하여 .class 파일을 실행하려면 클래스의 정규화된 클래스 이름을 사용해야 할 뿐만 아니라 현재 경로 아래에 클래스의 패키지 수준 폴더도 있어야 합니다. -d 옵션을 사용하여 컴파일해야 합니다. 그렇지 않으면 패키지 계층 구조 폴더를 직접 만들어야 합니다.
3. 자바프
javap는 주로 개발자가 Java 컴파일러의 메커니즘을 깊이 이해하는 데 사용됩니다. 주요 옵션은 다음과 같습니다.
-c는 메소드 코드를 분해합니다. 즉, 각 메소드의 특정 바이트코드를 표시합니다.
-public | protected | private은 표시할 클래스 멤버의 수준을 지정하는 데 사용됩니다.
-verbose는 더 자세한 정보를 표시하도록 지정합니다.
아래와 같이 javap -c com/stopTalking/test/JavacTest를 입력합니다.