자바 프로그래머로써 일을하다보면 남이 만들어둔 .jar 안에 .class 파일을 열어서 확인하고 싶을때가 있다.
이때 Jad 를 사용하면 .class 파일을 .java 로 디컴파일하여 소스코드를 확인할수있다.
우선 아래 경로에서 jad.exe 파일을 다운받아야한다.
https://varaneckas.com/jad/이제는 바로 사용하여도 좋다.
이제 콘솔창을 열어 jad.exe가 설치된 경로로 이동하여 jad 를입력해본다.
그러면 아래와 같이 option들의 대한 설명이 적혀있는 문자열이 출력된다.
현재 아래 와 같이 폴더안에는 .class 파일 하나와 dir 폴더 jad 파일이 존재한다.
클래스 파일과 dir 은 테스트 용도로 넣었다.
※ Readme.txt 를 보면 좀더 자세한 설명이 나와있다.
.class 파일 하나를 디컴파일
명렁어
jad -o -sjava ComUtil.class
-o : 디컴파일후에 생성된 파일과 동일한 파일이 있을경우 덮어쓴다.
-s<ext> : 확장자명을 지정한다. -sjava 는 .java 로 생성한다는 뜻이다.
폴더(패키지)전체를 디컴파일
명령어
jad -o -r -sjava dir/*.class
-r : 디렉토리를 기준으로 디컴파일한다.
dir/*.class 는 dir 폴더안에 모든 class 파일을 디컴파일하겠다는 뜻이다.
※ 실제 java파일 생성되는 경로는 class 파일에 들어있는 내용중 패키지내용을 따라서 폴더가 만들어진다.
확인
'개발 > Java' 카테고리의 다른 글
[JAVA/자바] 현재 접속한 서버의 IP 주소 확인 (0) | 2017.11.21 |
---|---|
[JAVA/자바] 파일삭제 File delete() 사용법 (0) | 2017.04.13 |
[JAVA/자바] SFTP 파일업로드/다운로드 (2) | 2017.04.06 |
[JAVA/자바] 파일압축하기 ( jazzlib, apache.commons.compress ) (5) | 2017.04.06 |
[JAVA] 메인메소드 public static void main(String[] args) 를 이해하자 (18) | 2017.02.17 |