작업을 하다 자바소스를 잃어버려 이전에 컴파일 해놓은 .class 파일을 역컴파일 해서 소스를
보고 싶을때가 있을것이다. 그리고 배포된 API 들을 열어 좋은 예가 되는 소스를 보고 공부해
볼수도 있다. 이럴때 eclipse 에서 볼수있는 방법이다.
환경은 Eclipse SDK 3.3 이며 jad 실행파일과 jadclipse 이클립스 플러그인이 필요하다.
Jad 다운로드 : http://www.kpdus.com/jad.html jadnt158.zip
각종 OS 환경에 맞는 프로그램이 있는데 windows 용을 받는다.
Jadclipse다운로드: http://sourceforge.net/projects/jadclipse 에서
JadClipse (net.sf.jadclipse_3.3.0.jar) 를 다운 받는다. 다운받는 사이트에 보시면 eclipse 버전에 맞는 플러그인 버전이 표시 되어있으므로 맞는걸 다운받으면 된다.
먼저 jad.exe 를 사용해서 독립적으로 사용하는 방법과 eclipse 와 연동해서 사용하는 방법 두가지를
기술하도록 하겠다.
몇 개안되는 클래스파일들은 jad.exe 만으로 컴파일 하게 되면 더 편할수도 있는데 위에서 받은
jadnt158.zip 압축을 풀게 되면 jad.exe 가 나오게 되는데 이것을 java path 환경설정이 잡혀있는
bin 폴더에 넣는다. 도스창에서 실행을 바로 할수 있도록 하기 위함 이다.
제대로 깔렸는지 실행해본다.
아래 보는 바와 같이 programDlg.class 를 디컴파일 하게 되는데
명령어는 jad –s .java [컴파일된파일명]로 넣어서 실행하면되는데 output은[파일명].java가 될것이다.
하나의 컴파일된 클래스 파일이 아닌 폴더에 있는 모든 클래스 파일을 디컴파일하고 싶을 때
명령어는 다음과 같다. Jad -o -r -s .java **/*.class
다음은 이클립스에서 실행하기 위한 환경설정과 방법이다.
위에서 다운받은 jadclipse -> net.sf.jadclipse_3.3.0.jar 를 eclipse plugin 폴더에 넣는다.
Windows > Preferences > java > Jadclipse 라는 메뉴가 생겼을 것이다.
기본셋팅은 아래와 같을텐데 그대로 둔다
다음 해야될것이 .class 파일클릭시 기본적으로 jadclipse 가 실행되도록 설정해줘야한다.
Windows> Preferences > General > Editors > File Associations 클릭하게 되면
모든 확장가가 기본적으로 취하게 되는 프로그램명들을 설정할수 있게 되어있는데 .class 파일을
클릭해서 아래에 jadclipse file view를 기본으로 사용하겠다고 오른쪽 default 클릭해서 셋팅한다
이제 디컴파일이 되는지 확인하기 위해서 jar 파일을 열고 클래스 파일을 클릭하게 되면
디컴파일된 소스가 화면에 나타나게 된다.
기타 환경설정을 해야되는부분이다. 한글이 깨지는 문제는 Convert Unicode String into ANSI Strings
체크하면 된다.
프로젝트 폴더에 넣었다고해서 디컴파일을 jadclipse 가 다 실행시켜주는 것은 아니다.
몇 개의 원하는 class 파일을 이클립스에서 디컴파일 할려고 할 때 Project build path 에 Libraries
등록 되어있어야 한다. 그림에서 와 같이 Add class folder 클릭하여 원하는 폴더를 체크하면 되는데
없을경우 만들어서 넣고 그 만든폴더에 class 파일이 들어가면되는 것이다
0