maven관련해서 매번 검색하는 scope와 goal
정리해놓고 보면 간단한데 매번 헷갈린다. 특히 goal ㅠㅠ
더 이상 검색을 하지 않기 위해 기록으로 남겨본다.
- scope
- compile : 컴파일 및 배포시 같이 제공되어 집니다. scope를 설정하지 않았을 때의 기본값입니다.
- provided : WAS(외부 컨테이너)에서 제공되어 지므로 컴파일 시에는 필요하지만, 배포시에는 빠지는 라이브러리 입니다.
- runtime : 컴파일 때는 사용되지 않고, 실행시에만 사용되어지는 라이브러리 입니다.
- test : 테스트 할때만 사용하는 라이브러리 입니다.
- system : 저장소에서 관리하지 않고 직접 관리하는 jar 파일을 지정합니다.
- import : 다른 pom 설정파일에서 정의되어 있는 의존 관계를 이 프로젝트로 가져옵니다.
- goal
- clean : 컴파일 결과물인 target 디렉토리 삭제
- compile : 모든 소스코드 컴파일, 리소스파일을 target/classes 디렉토리에 복사
- package : compile 수행 후, 테스트 수행, <packaging> 정보에 따라 패키징 수행
- install : package 수행 후, local repo에 install 수행
- deploy : install 수행 후, 배포 수행, 여기서 배포는 웹서버에 배포가 아니다. 회사 repo에 배포다.
- 아래와 같이 distributionManagement 항목이 기술되어야 한다.
<distributionManagement>
<repository>
<id>releases-repo</id>
<name>Releases Repository</name>
<url>회사repository주소(넥서스)</url>
</repository>
<snapshotRepository>
<id>snapshots-repo</id>
<name>Snapshots Repository</name>
<url>회사repository주소(넥서스)</url>
</snapshotRepository>
</distributionManagement>
출처)
'work' 카테고리의 다른 글
Jupyter에 kernel 추가 (0) | 2020.04.14 |
---|---|
maven 빌드 시 테스트 건너뛰기 (0) | 2020.02.17 |
MAC OS Dock 이동하기 (0) | 2020.01.29 |
[Elasticsearch] 특정 필드 삭제 (0) | 2020.01.28 |
[Flask] CORS - Access to XMLHttpRequest at * from origin * has been blocked by CORS policy (0) | 2020.01.17 |