프로그래밍 언어/JAVA
[명령어] javap 명령어
투칼론
2022. 10. 17. 21:23
반응형
1. 개요
javap는 하나 이상의 클래스(class) 파일을 디스어셈블(disassemble) 하는 명령어이다.
사용법은 아래와 같다.
$ javap [클래스]
예를들어,
$ javap HelloWorld 명령을 실행하면,
Compiled from "HelloWorld.java" public class HelloWorld { public HelloWorld(); public static void main(java.lang.String[]); } |
javap 명령어는 어느 자바 소스로 부터 컴파일되었고, 필드와 메소드를 확인할 수 있다.
2. 클래스(class) 파일이 컴파일된 자바 버전 확인
javap 명령어가 필요한 경우에는 클래스(class) 파일이 컴파일된 자바 버전을 알고 싶을 때, 자주 사용된다.
예를들어, 아래 명령어 결과로 HelloWorld 클래스는 JDK 8 버전의 javac로 컴파일되었다는 것을 확인할 수 있다.
$ javap -verbose HelloWorld | grep major
major version: 52
자바버전 = major version (hex) |
Java SE 18 = 62 (0x3E hex), Java SE 17 = 61 (0x3D hex), Java SE 16 = 60 (0x3C hex), Java SE 15 = 59 (0x3B hex), Java SE 14 = 58 (0x3A hex), Java SE 13 = 57 (0x39 hex), Java SE 12 = 56 (0x38 hex), Java SE 11 = 55 (0x37 hex), Java SE 10 = 54 (0x36 hex), Java SE 9 = 53 (0x35 hex), Java SE 8 = 52 (0x34 hex), Java SE 7 = 51 (0x33 hex), Java SE 6.0 = 50 (0x32 hex), Java SE 5.0 = 49 (0x31 hex), JDK 1.4 = 48 (0x30 hex), JDK 1.3 = 47 (0x2F hex), JDK 1.2 = 46 (0x2E hex), JDK 1.1 = 45 (0x2D hex). |