Whiteship's Note

Maven을 사용하세요. 코딩이 편해집니다.

Build/Maven : 2008.05.19 23:14


mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true

eclipse:eclipse는 단순하게 메이븐 프로젝트를 이클립스 프로젝트로 변화해주는 것 뿐만이 아니라 이런 사랑스럽기까지한 일도 해줍니다.

대부분 자바 프로젝트에서 수 많은 라이브러리들을 사용하고 계실 줄로 압니다. 그 중에서 오픈소스도 여럿 되고 그러다 보면 소스 코드도 볼 수 있는데, 이클립스에서 "Alt + 왼쪽 클릭"으로 링크를 타고 들어가듯이 소스를 네비게이션 하는 하루 일과 중에서도 꽤 큰 비중을 차지할 것입니다.

그런데 그렇게 하다보면 좀 답답하시죠? 소스 코드는 안 나타나고 벽에 부딪힌거 마냥 .class 파일이 나타나서 길을 가로막습니다. 그래도 뭐 방법은 있습니다. attach 머시기 메뉴를 사용해서 소스 코드가 있는 위치를 알려주면 됩니다. 귀찮죠.

그래서 위의 명령어가 멋진겁니다. 한 번 사용하시면 해당 프로젝트가 참조하는 라이브러리의 소스 파일과 javaDoc을 다운로드 해옵니다. 멋지죠. 저 명령어 한 번 사용하고 이클립스에서 F5키로 프로젝트 다시 로딩 해주고(이게 꼭 필요한 과정인지는 모르겠습니다. 전 습관처럼 콘솔창에서 프로젝트가지고 장난치면 이클립스에서 매번 F5키를 눌러줍니다.) 소스 네비게이션을 하다보면 감탄하게 될 겁니다.

아예 플러그인 기본값으로 파라미터 설정해서 mvn eclipse:eclipse만 실행해도 소스코드랑 JavaDoc을 받아오게 설정할 수 도 있습니다. 참조 
top

  1. 2009.01.04 17:05 PERM. MOD/DEL REPLY

    비밀댓글입니다

    Favicon of https://whiteship.tistory.com BlogIcon 기선 2009.01.04 20:46 신고 PERM MOD/DEL

    네 가끔 라이선스 때문인지 귀찮아서인지 저장소에 소스 jar가 안올려져 있는 경우가 있어요. 소스가 안 받아지는 경우엔 그냥 뭐 저장소에 없어서죠.ㅋㅋ

  2. 감사^^ 2009.04.14 09:52 PERM. MOD/DEL REPLY

    아 정말 고마운 정보 감사합니다.
    덕분에 문제를 해결했어요.자주 들리겠습니다.좋은정보 다시 한번 감사해요 ^^

  3. Favicon of http://combible.tistory.com BlogIcon 컴바이블 2010.02.08 11:37 PERM. MOD/DEL REPLY

    Maven을 잘 사용하시는 것 같아서 질문좀 드리려구요~
    http://code.google.com/p/ebi-pride/ 여기의 데이터베이스를 설치하는 중에 프로젝트가 메이븐으로 되어있는데, 제가 메이븐을 사용해본적이 없어서..
    필요한 환경은 다 다운로드, 설치했습니다.

    Alternatively, if you host your own repository you can deploy the file there:
    mvn deploy:deploy-file -DgroupId=uk.ac.ebi.pride -DartifactId=pride-core -Dversion=2.5.7 -Dclassifier=javadoc -Dpackaging=javadoc -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]

    위와같은 메세지에서 Dfile, Durl, DrepositoryId 에 각각 설정해줘야하는 값이 어떤것인지 좀 조언해주세요~

    Favicon of http://whiteship.me BlogIcon 기선 2010.02.08 12:11 PERM MOD/DEL

    pride 라이브러리를 못가져와서.. 메이븐 리파지토리에 저런식으로 해당 라이브러리를 직접 배포 해놓고 쓰라는 것 같습니다.

    파일은 배포할 파일 경로, url은 배포할 url 경로, repositoryid는 배포할 repsitoryid를 주는거라고 밖에...@_@;; 암튼 이게 중요한게 아니라.

    pom.xml에 repository 설정을 추가해서 pride 라이브러리를 가져오게 하는게 좋겠습니다.

    http://code.google.com/p/ebi-pride/wiki/Building_A_PRIDE_Based_Application

    이 페이지를 보니까 리파지토리 설정이 있는데요. 이것을 pom.xml의 <repositories> 엘리먼트 안에 넣어주셨는지 확인 바랍니다.

    그런 뒤에 mvn eclipse:eclipse를 해서 pride 라이브러리를 가져왔는지 어쩐지를 확인해 보세요. 이클립스에 M2Eclipse 같은 것을 설치하셨다면 pom.xml의 depedency 탭에서 pride-core 라이브러리가 들어와있는지 살펴보시면 되겠습니다.

    인텔리J에서는 플러그인 설치도 필요없고 그냥 릴로딩 한번 해주면 끝인데 말이죠.ㅋ

    Favicon of http://combible.tistory.com BlogIcon 컴바이블 2010.02.08 14:02 PERM MOD/DEL

    답변감사힙니다.
    다운로드 받은 프로젝트 pom.xml 파일에 링크 걸어주신 repository 설정은 이미 되어있는데요...
    위 프로젝트가 core 라는 프로젝트하고 web 프로젝트 두개로 나뉘어져있습니다. web 을 compile 할때 core 에서 만들어진 jar 파일을 잘 가져와야하는 듯 보이는데요, core를 컴파일하면 아래와 같은 에러가 나네요..
    MavenReportException: Error while creating archive:Exit code: 1 - error: error reading /home/testuser/.m2/repository/org/apache/commons/commons-io/1.3.2/commons-io-1.3.2.jar; error in opening zip file

    해당 위치에 jar 파일은 존재하던데, 무엇이 문제일까요;

    Favicon of http://whiteship.me BlogIcon 기선 2010.02.08 14:40 PERM MOD/DEL

    흠.. 저런 에러는 첨 보는거라 몰겠는데요; zip 파일을 왜 열려고 하는지 잘 몰겠어요; 메이븐으로 어떤 과정을 하고 계신건가요? 흠;;

  4. Favicon of http://combible.tistory.com BlogIcon 컴바이블 2010.02.08 14:43 PERM. MOD/DEL REPLY

    core 프로젝트 pom.xml 파일 있는 곳에 가서 mvn compile 을 했습니다. 뭔가 필요한 jar가 생성되지 않을까..하는 기대를 가지고서요 ㅡㅡ;

    Favicon of http://whiteship.me BlogIcon 기선 2010.02.08 16:17 PERM MOD/DEL

    흠.. mvn compile을 해야지만 price DB를 설치할 수 있는건가요?

  5. Favicon of http://combible.tistory.com BlogIcon 컴바이블 2010.02.08 14:47 PERM. MOD/DEL REPLY

    죄송하지만, 혹시 네이트온 사용하시면 친추좀 될까요? ㅡㅡ;
    hongtebari@nate.com 입니다.

    Favicon of http://whiteship.me BlogIcon 기선 2010.02.08 16:18 PERM MOD/DEL

    훔;; 보통은 구글 토크만 접속하는데;; 들어가보죠.

Write a comment.