Notepad

javap

  • 자바 클래스 파일 디스어셈블러(disassembler)로 javap 명령은 하나 이상의 클래스 파일을 역어셈블함.
  • 옵션을 사용하지 않으면 javap는 전달된 클래스의 package, protected 및 public 필드와 메서드를 출력.

javap 사용법

javap [ options ] classes

javap options

  • help
    • 도움말
  • ?
    • javap에 대한 도움말 메시지를 출력
  • l
    • 라인 및 로컬 변수 테이블을 출력
  • public
    • public 클래스 및 member 변수만 출력
  • protected
    • protected 클래스와 public 클래스 및 member 변수만 출력
  • package
    • package, protected 및 public 클래스 및 member 변수만 출력(기본 설정)
  • private / p
    • 모든 클래스 및 member 변수를 출력
  • Jflag
    • 런타임 시스템에 플래그를 직접 전달
      예:
      javap -J-version
      javap -J-Djava.security.manager -J-Djava.security.policy=MyPolicyMyClassName
  • s
    • 내부 형식 서명을 출력
  • sysinfo
    • 처리 중인 클래스의 시스템 정보(경로, 크기, 날짜, MD5 해시)를 출력
  • constants
    • static fianl constants를 출력
  • c
    • 클래스의 각 메서드에 대해 분해된 코드, 즉 Java 바이트 코드를 구성하는 명령을 출력
  • verbose
    • 메서드에 대한 스택 크기, 로컬 수 및 인수를 출력
  • classpath path
    • Java가 클래스를 검색하는 데 사용하는 경로를 지정
    • 기본값 또는 CLASSPATH 환경 변수가 설정된 경우 이를 재정의
  • bootclasspath path
    • 부트스트랩 클래스를 로드할 경로를 지정
    • 기본적으로 부트스트랩 클래스는 jre\lib\rt.jar와 다른 jar 파일에 위치한 핵심 자바 플랫폼을 구현하는 클래스
  • extdirs dirs
    • 설치된 확장을 검색할 위치를 재정의
    • 확장자의 기본 위치는 java.ext.dirs 값

출처

'dev > Java' 카테고리의 다른 글

[이펙티브 자바 3/E] Item 7 메모  (0) 2022.06.05
profile

Notepad

@Apio

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!