Dependency 라이브러리의 scope 옵션의 종류이다.
compile | 기본영역 컴파일 시점에 필요하고 배포할대도 포함이 되어진다. 이 프로젝트를 dependency 설정된 다른 프로젝트에서도 포함이 된다. |
provided | 컴파일 시점에는 필요하지만 배포시점에는 불필요한 라이브러리로 JDK, servlet API, Java EE API 등이 해당된다. |
runtime | 컴파일 시점에는 필요없지만 runtime 시점에 필요한 라이브러리 |
system | Repository 에서 검색을 하지 않고 명시된 위치에서 Jar를 이용한다. 그 외 provided와 유사함 |
test | 테스트 컴파일과 실행 시점에만 사용됨 |
import | Maven 2.0.9 이후에서만 적용, 다른 POM 설정 파일에 정의되어 있는 의존 관계 설정을 현재 프로젝트로 가져온다. <dependencyManagement> 에서만 사용이 가능하다. |
Maven Build 시에 package javax.servlet.http does not exist 와 같은 servlet 에러가 발생시
컴파일시에만 필요한 servlet 라이브러리를 이용해야될 경우가 생긴다. 이럴땐
pom.xml
<dependency> |
와 같이 scope 옵션을 이용하여 컴파일에만 해당 servlet.jar를 참조 할수 있게끔 한다.
war 배포시에는 해당 jar는 포함되어 있지 않다.
참조 : http://devkkaok.tistory.com/208
[출처] [Maven] Dependency 의 scope 옵션|작성자 지똘
'빌드서버 > MAVEN' 카테고리의 다른 글
[maven] maven-jar-plugin, maven-dependency-plugin (0) | 2017.10.13 |
---|---|
[maven] pom.xml 에 ${project.basedir} 사용하기 (0) | 2017.10.13 |
[Maven] Maven Build 시에 인코딩 변환 (0) | 2017.10.13 |
[Maven] systemPath, system scope 대신에 3rd 라이브러리 추가법 (0) | 2017.10.13 |
[Maven] 메이븐 빌드 - 개발 / 운영 서버 별 빌드 소스 구분 (0) | 2017.06.02 |