> Java > Java베이스 > 본문

클래스 파일을 Java 파일로 디컴파일하는 방법

青灯夜游
풀어 주다: 2023-01-13 00:39:55
원래의
28732명이 탐색했습니다.

방법: 1. "jad.exe" 플러그인을 다운로드하고 ".class" 파일과 동일한 디렉터리에 배치합니다. 2. cmd 명령 창을 열고 cd 명령을 사용하여 "Jad.exe"가 있는 디렉터리를 입력합니다. .exe"가 있습니다. 3. "Jad -d java 파일 저장 경로-sjava 클래스 파일 경로" 명령을 실행하면 됩니다.

클래스 파일을 Java 파일로 디컴파일하는 방법

이 튜토리얼의 운영 환경: windows7 시스템, java8 버전, DELL G3 컴퓨터.

1. 도구/재료

jad.exe 디컴파일 플러그인

다운로드 주소를 참고하세요:

https://varanekas.com/jad/

ttp://pan.baidu .com/ s/1qWmNlww

2.Method/step

Instructions

  • 많은 JAVA 디컴파일 도구 중에는 동일한 핵심 엔진인 JAD를 사용하는 매우 유명한 도구가 몇 가지 있습니다. 주로 Front End
    Plus, mDeJava, Decafe Pro, Cavaj Java Decompiler, DJ Java
    Decompiler, NMI의 ​​Java Class
    Viewer 및 국내 JAVA 소스코드 역컴파일 전문가 등이 있습니다. JAD 자체는 그래픽 인터페이스가 없는 명령줄 도구입니다. 위 도구의 대부분은 JAD 커널을 기반으로 하는 그래픽 인터페이스만 추가합니다. 이렇게 많은 제품을 공통으로 선택한다는 것은 JAVA 디컴파일 분야에서 JAD의 탁월한 위치를 입증하기에 충분합니다.

Operation

jad.exe 및 .class 파일을 동일한 디렉터리에 배치합니다(필수는 아님, 선택 사항, 나중에 설명함)

클래스 파일을 Java 파일로 디컴파일하는 방법

시작-실행(또는 Win+R)-cmd 열기 시스템 명령 창을 열고 Jad.exe가 있는 디렉터리를 입력하세요.

예: 클래스 파일을 Java 파일로 디컴파일하는 방법

f: 
cd F:\Jad
로그인 후 복사

 여기에 그림 설명 삽입Jad -d F:Jadtest -sjava test*.class 回车 即可生成Java文件

클래스 파일을 Java 파일로 디컴파일하는 방법

示例:

Jad -d F:\Jad\test -sjava test\*.class
로그인 후 복사

클래스 파일을 Java 파일로 디컴파일하는 방법
备注说明: *.class 中*是通配符,默认选中此目录下所有.class文件,如只需要反编译某一个.class文件,可直接写成 文件名+.class

如:Jad -d F:Jadtest -sjava testCaseInfoSaveAction.class비고 : *의 *.class는 와일드카드 문자입니다. 기본적으로 이 디렉터리의 모든 .class 파일이 선택됩니다. 특정 .class만 디컴파일해야 하는 경우 파일에 다음과 같이 파일 이름 + .class

을 직접 작성할 수 있습니다. Jad -d F:Jadtest -sjava testCaseInfoSaveAction.class

Jad command--도움말 팁:



-a - 출력에 주석을 달려면 JVM 바이트 형식을 사용하세요
-af - -a와 같지만 주석을 달 때는 전체 이름을 사용하세요
-clear - 모든 접두사를 지웁니다
-b - 중복 괄호를 출력합니다(예: if(a) { b(); }, 기본값: no)
-d - 출력 파일 파일 디렉터리 지정
-dead - 코드의 데드 부분을 디컴파일하려고 시도합니다(기본값: no)
-disass - 바이트코드로 디컴파일하지 않습니다. JAVA 소스 생성)
-f - 클래스인지 메소드인지 전체 이름을 출력합니다.
-ff - 메소드 앞에 클래스 멤버를 출력합니다(기본값: 메소드 뒤)
-i - 모든 클래스의 기본 초기 값을 출력합니다. 변수
-l - 문자열을 지정된 수의 문자 블록으로 분할합니다(기본값: no)
-lnc - 출력 파일에 줄 번호로 주석을 답니다(기본값: no)
-nl - 줄 바꿈 문자로 문자열 분할( 기본값: no)
-nodos - 클래스 파일이 Write in dos 모드로 끝나는지 확인하지 않음(NL 앞의 CR, 기본값: 확인)
-nocast - 보조 파일을 생성하지 않음
-nocode - 메소드의 소스 코드를 생성하지 않음
-noconv - Java 정의자를 변환하지 않음(기본값: do)
-noctor - no 빈 생성자 허용
-noinner - 내부 클래스에 대한 지원 끄기(기본값: 켜기)
-nolvt - 지역 변수에 대한 테이블 정보 무시
- nonlb - 괄호를 열기 전에 개행 문자를 출력하지 않음(기본값: do)
-o - 확인 없이 출력 덮어쓰기(기본값: no)
-p - 디컴파일된 코드를 표준 출력 STDOUT으로 보내기(예: 파이핑용)
-pa - 소스 파일에서 모든 패키지를 생성하는 데 사용되는 접두사
-pc - 숫자 이름이 있는 클래스의 접두사(기본값: _cls)
-pe - 사용되지 않는 예외 이름의 접두사(기본값: _ex)
-pf - 숫자 이름이 있는 필드의 접두사 (기본값: _fld)
-pi - 사용합니다.
-pl - 숫자 이름이 있는 지역 변수 접두사(기본값: _lcl)
-pm - 숫자 이름이 있는 메서드 접두사(기본값: _mth)
-pp - 숫자 이름이 있는 메서드 접두사 parms(기본값 :_prm)
-pv - 필드 압축 동일한 유형을 한 줄로(packfields)
-r - 패키지 디렉터리 구조 복원
-s - 출력 파일 확장자(기본값: .jad)
- 공백 - 키워드(if, while 등) 및 표현식 사이의 출력 공백
-stat - 처리된 총 클래스/메서드/필드 수 표시
-t - 들여쓰기에 공백 사용(기본값: 4)

-t - 대신 탭 사용 들여쓰기에 공백 사용 🎜 -v - 디컴파일 시 메서드 이름 표시 🎜

추천 관련 비디오 튜토리얼: Java 비디오 튜토리얼

위 내용은 클래스 파일을 Java 파일로 디컴파일하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿