manywaypark's Blog
개발, 검색, 함수

[maven] source jar, javadoc 다운로드

java 2016. 7. 13. 11:49 by manywaypark

maven을 쓰면 기본적으로는 pom.xml 파일의 dependency에 지정된 artifact들의 binary jar만 받아오는데, 소스나 javadoc이 보고싶은 경우가 있다.

아래처럼 해주면 source jar, javadoc을 받아온다.


mvn dependency:sources

mvn dependency:resolve -Dclassifier=javadoc


ref: http://stackoverflow.com/questions/2059431/get-source-jars-from-maven-repository


happy hackin'

그냥 링크만...

ref:

http://www.mkyong.com/java/how-to-convert-java-project-to-web-project-in-eclipse/


happy hackin'

Tycho?

java/eclipse 2013. 5. 19. 16:33 by manywaypark

eclipse 또는 OSGi 프로젝트를 그냥 명령행에서 maven을 이용해서 빌드할 수 있게 해준다.

production level의 build 및 CI 환경에서는 반드시 사용해야만 할듯...


https://support.sonatype.com/entries/20910552.html

http://wiki.eclipse.org/Tycho/Reference_Card


happy hackin'

문제:

eclipse에서 m2eclipse를 쓸때,

project를 import(일반적으로 쓰는 Import > General > Existing Projects into Workspace)한 후에 right click project > Configure > Convert to Maven Project를 선택하면 다음과 같은 오류가 나면서 제대로 동작하지 않는 경우가 있다.

An internal error occurred during: "Enabling Maven Dependency Management".

Unsupported IClasspathEntry kind=4

해결:

  1. rightclick project, remove maven nature
  2. mvn eclipse:clean (with project open in eclipse/STS)
  3. delete the project in eclipse (but do not delete the sources)
  4. Import existing Maven project

ref: http://stackoverflow.com/questions/15065093/an-internal-error-occurred-during-updating-maven-project-unsupported-iclassp


happy hackin'

[TIP] java character encoding 관련 고려 사항

java 2010. 8. 24. 18:40 by manywaypark
기본적으로 encoding을 지정할 수 있는 클래스를 쓰는 것이 좋다 (즉, FileReader 따위를 쓰면 안된다).
encoding을 지정하지 않으면, OS나 configuration의 기본 encoding을 쓰게 되므로, runtime에 어찌될지 아무도 모른다.

happy hackin'

refs:

[TIP] Java on Mac OS X 그리고 Maven

java 2009. 4. 30. 00:43 by manywaypark
hudson을 build하다가 생긴 문제의 해결방법이다(좀 특이하다는 말). 이전 포스트와도 좀 연관이 있다.
내 경우(유니바디 알미늄 맥북, java가 깔려서 출고된다)에는 터미널에서 java -version을 하면 1.5대의 버전이 찍혔다. 기본 설정인 듯했다.
결론부터 말하자면 Mac OS X에서는 "Applications/Utilities/Java/Java Preferences"에서 java 환경을 설정할 수 있다.
1.6(메뉴상에는 Java SE 6으로 표시된다)으로 설정하고 명령행에서 확인하면 다음과같이 나온다.
$ java -version
java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06-153)
Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_07-b06-57, mixed mode)

그럼에도 불구하고, hudson을 build하기위해 터미널에서 mvn install을 실행하면 이전 포스트의 에러가 반복되었다.
Detected JDK Version: 1.5.0-16 is not in the allowed range [1.6.0,].
해결책은 JAVA_HOME을 설정하면 된다.
export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home
아득한 기억을 더듬어보면, windows와 linux에서는 JAVA_HOME이 설정 안되어있으면 에러가 나면서 build 자체를 시도하지도 않았던거같은데...  맥에서는 왜 이런거지? Orz.

참고:

happy hackin'
eclipse의 maven plugin인 m2eclipse를 이용해서 빌드를 할때 다음과 같은 메시지가 나오면서 빌드가 멈출 때가 있다.
Detected JDK Version: 1.5.0-16 is not in the allowed range [1.6.0,].
기본적으로 컴파일에 필요한 자바 버전이 안맞아서 나오는 메시지인데, 실제로 명령행에서 빌드할 때는 JAVA_HOME이 정확한 버전(이 경우 1.6이상 버전의 JDK)을 가리키고 있다면 mvn으로 잘 빌드되는 환경에서도 eclipse 내에서 m2eclipse를 사용하면 이 에러가 나는 좀 복잡한 상황이다.
일단 pom.xml에서 오른쪽 클릭으로 문맥 메뉴 선택후 "Run As > Maven Build..."를 해서 빌드를 하면 된다는 workaround는 찾았는데 조금 찜찜하다.

참고:

참고2:
eclipse는 JAVA_HOME 환경변수와는 무관하게 독자노선(?)을 걷는다. eclipse.ini에서 설정가능하다. README 참조.
또한 eclipse를 실행시키는 java(eclipse.ini에서 설정)와 eclipse가 build에 쓰는 java(Preferences에서 설정)는 다를 수 있다.

happy hackin'

Project Properties -> Project Facets panel에서 설정


happy hackin'
증상:
mvn install 등의 명령으로 좀 큰 프로젝트(예를 들자면 hudson 등)를 빌드하다 보면, 다음과 같은 에러 메시지와 함께 빌드가 되지 않는 경우가 있다.
The system is out of resources. Consult the following stack trace for details. java.lang.OutOfMemoryError: Java heap space
해결책:
MAVEN_OPTS 환경 변수를 "-Xmx1024m" 정도로 설정한다.
export MAVEN_OPTS=-Xmx1024m

happy hackin'
현재(2009-04-23) eclipse maven plugin을 update site에서 설치하려고 하면 다음과 같은 에러가 나면서 설치가 안된다.
ERROR Message:
Cannot find a solution satisfying the following requirements org.eclipse.swt [3.4.1.v3449c].

해결:
Install Package 리스트에서 AJDT를 빼고하면 해결된다.
(이건 머하는 놈일까? 요즘 eclipse가 많이 복잡해진듯하다.)

happy hackin'
1 2 
분류 전체보기 (306)
잡담 (20)
함수형 언어 (65)
emacs (16)
java (18)
tips & tricks (154)
사랑 (1)
가사 (0)
독서 (4)
mobile (6)
비함수형 언어 (2)

공지사항

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

04-26 06:33