다른 프로필에 대해 maven pom.xml 파일에 다른 종속성 집합을 가질 수 있습니까?
예 :
mvn -P debug
mvn -P release
동일한 클래스 이름과 동일한 인터페이스의 다른 구현을 가진 하나의 프로필에서 다른 종속성 jar 파일을 선택하고 싶습니다.
답변
이에 대한 Maven 문서 를 인용하려면 :
프로필 요소에는 선택적 활성화 (프로필 트리거)와 해당 프로필이 활성화 된 경우 POM에 적용 할 변경 집합이 모두 포함됩니다. 예를 들어 테스트 환경 용으로 빌드 된 프로젝트는 최종 배포와 다른 데이터베이스를 가리킬 수 있습니다. 또는 사용 된 JDK 버전에 따라 다른 저장소에서 종속성을 가져올 수 있습니다. .
(강조는 내 꺼야)
release
프로필 에 대한 종속성을 프로필 선언 자체에 넣고 debug
.
<프로필> <프로필> <id> 디버그 </ id> … <종속성> <dependency>… </ dependency> </ 종속성> … </ 프로필> <프로필> <id> 출시 </ id> … <종속성> <dependency>… </ dependency> </ 종속성> … </ 프로필> </ 프로필>
답변
groupId, artifactId는 속성으로 프로필에서 토큰 화되어야하며 종속성을 일반 섹션으로 이동할 수 있습니다.