들어가기 전에....
- 명령어 창(cmd)를 통해 메이븐 프로젝트를 만들었다. ( 전 글 참고 )
- 이클립스를 통해 개발을 시작하자!
- 이클립스에서 프로젝트를 만들면 Maven에서 다운받은 라이브러리를 클래스패스에 추가해야 된다??
- 다행이 maven eclipse plugin이 메이븐 설정파일을 이용해서 이클립스 프로젝트로 변환해 주는 플러그인이 있긴 있다.
메이븐 이클립스 플러그인
이클립스는 많은 프레임워크 ( ex: git, openshift 등등 ) 와의 통합을 지원한다. 역시, maven eclipse plugin을 통해 메이븐 통합을 지원하고 있다.
어떻게 메이븐->이클립스 프로젝트 변환이 가능한가?
pom.xml에는 프로젝트와 관련된 소스 디렉토리, 테스트 소스 디렉토리, 의존 관계에 있는 라이브러리 정보가 모두 포함되어 있기 때문에 .classpath 파일을 자동 생성할 수 있다.
- mvn eclipse:eclipse - pom.xml 파일 설정을 활용하여 이클립스 프로젝트 메타파일들(.project, .classpath)을 생성
- mvn eclipse:clean - 이클립스 프로젝트 메타파일들(.project, .classpath)를 삭제
- classpathentry를 보면 M2_REPO(저장소)를 가리키도록 생성되었다.
( 저장소 설정 방법 - Window>Preferences>Java>Build Path>Classpath Variables)
메이븐 프로젝트를 Dynamic Web Project로 생성하려면?
( + Dynamic Web Project로 생성하면 좋은점 ? 이클립스에서 톰캣 서버와 같은 서블릿 컨테이너에 바로 배포 가능함 )
프로젝트 개발 시작
Maven Dependency에 명시해놓은 라이브러리 F3을 눌러 소스코드에 접근하려고 하는데 소스코드가 보이지 않는다. 그 이유는 이클립스 설정에 추가하지 않았기 때문이다.
[ 기존에 eclipse 개발 시 소스코드 추가 방법 ]
그렇다면 항상 source와 docs를 찾아서 설정을 해줘야 하는가? 메이븐 eclipse 플러그인에서 활용할 수 있는 인자를 찾아보았다. 소스코드 참조 뿐만 아니라 자바독 문서까지 자동으로 다운받게 해주는 인자가 있었다.
pom.xml과 .classpath를 다시 확인해보자.
<plugin>
...
<configuration>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</configuration>
</plugin>
<classpathentry kind="var" path="M2_REPO/junit/junit/3.8.1/junit-3.8.1.jar" sourcepath="M2_REPO/junit/junit/3.8.1/junit-3.8.1-sources.jar"/>
m2eclipse 플러그인 활용하여 빌드하기
위에 명시된 내용처럼라면 cmd창에 가서 mvn eclipse:clean mvn eclipse:eclipse를 실행하고 프로젝트를 재빌드해야 한다. 이 귀찮은 작업을 하지 않도록 도와주는게 m2eclipse 플러그인이다.
m2eclipse를 활용한 메이븐 실행
[ pom.xml 우클릭 > Run As ]
[ pom.xml 더블클릭 ]
maven 관련 명령어를 몰라도 더 나은 UI를 통해 확인이 가능
Dependencies : 프로젝트와 의존 관계에 있는 라이브러리르 관리할 수 잇음
Dependency Hieararchy : mvn dependency:tree, mvn dependency:resolve 실행했을 때
Effective POM : mvn help:effective-pom
maven> Update project : pom.xml이랑 java 설정들(.classpath 등) 싱크를 맞춰줌
'Maven' 카테고리의 다른 글
#3. 메이븐 설정 파일 (0) | 2017.10.25 |
---|---|
#1. 이상적인 개발 환경 (0) | 2017.10.25 |
#5. 메이븐을 이용한 의존 라이브러리 관리 (0) | 2017.10.24 |
Error 모음 (0) | 2017.03.18 |
Maven 기본 (0) | 2017.03.10 |