Software
jar 파일 소스보기
NYA
2009. 8. 28. 10:53
이 라이브러리, 어떻게 코딩되어 있을까?
이클립스에서 .jar 라이브러리 파일의 소스를 보는 방법은 3가지가 있다.
1. 소스 붙이기
애초에 오픈소스 라이브러리라면 소스를 포함한 jar 파일을 제공한다.
.class 바이너리 파일만 제공하는 파일 말고 소스가 포함된 파일을 구하면 attatch source 를 해서 볼 수 있겠다.
(이클립스에서 .class 파일을 열 때 뜨는 화면에서 Attatch Source... 버튼 클릭,
또는 jar 파일 우클릭 > Properties > Java Source Attatchment 에 source jar 파일 경로 입력)
연결이 되면, 아래처럼 jar 파일의 010 모양 아이콘에 종이쪼가리가 붙는다.
단, 매번 소스 jar 파일을 같이 구해서 붙여줘야 한다는 귀찮음이 있긴 하다.
2. 디컴파일
attatch source를 하는 게 귀찮다면, 그리고 소스를 구할 수 없는 상황에서는 디컴파일러를 이용할 수 있다.
JAD와 Jadclipse 파일을 다운로드 한다. (jad.exe 파일과 net.sf.jadclipse_3.3.0.jar 파일)
이클립스 버전이 3.4나 3.5 이상이라면(Ganimede SR2, Galileo..), 이클립스 설치 폴더의 dropins/ 폴더 아래에 그냥 넣는다. (jar 파일의 경우에 임의의 이름으로 폴더를 만들어서 넣으면 인식을 못하는 것 같다)
이클립스에 -clean 옵션을 주고 다시 켜고 메뉴의 Windows > Preferences 로 들어가서 몇 가지 설정을 한다.
General > Editors > File Association 에 들어가서 *.class 타입의 연결 에디터에 JadCliapse Class File Viewer 를 Default 로 설정한다.
Java > JadClipse 에 들어가서 맨 위의 Path to decompiler 에 jad.exe 파일의 경로를 넣는다. 아까 dropins 에 그냥 넣었으니 dropins/jad.exe 라고 적어준다.
이제 .class 파일을 열어보면 바로바로 디컴파일하여 소스를 보여준다.
이 때 아쉬운 점은 당연하게도 javadoc 이나 주석은 볼 수 없다는 점.
3. 메이븐 이용
프로젝트가 메이븐을 쓰고, 이클립스의 m2eclipse 플러그인을 이용한다면 더 간편한 방법이 있다.
jar 파일을 우클릭 하고 Maven > Download Sources 하면 끝이다. (물론 Maven Dependencies 인 것)
내부적으로는 1번처럼 작동하지만 그걸 메이븐이 자동으로 해주는 것이다.
소스를 받은 jar 파일의 경우 1번처럼 아이콘에 종이쪼가리 모양이 붙게 된다.