모듈 종속성이있는 다중 모듈 maven 프로젝트가 있습니다. 공유에 의해 나는 동일한 의존성을 사용함을 의미한다. 그러나 각 모듈은 종속성 자체를 선언합니다.Maven 버전 플러그인, 버전 제한 : 업데이트 속성 손상
<properties>
<dependency1.version>1.0-SNAPSHOT</dependency1.version>
<dependency2.version>1.1-SNAPSHOT</dependency2.version>
</properties>
을 모든 모듈은 같은 것을 사용 : 정신을 (그래, 받는다는, 정신, 내가 아는) 유지하려면 및 종속성의 동일한 버전을 사용하는 모든 모듈을 가지고, 부모 치어 버전 번호와 속성을 선언
<dependency>
<groupId>group</groupId>
<artifactId>dependency1</artifactId>
<version>${dependency1.version}</version>
</dependency>
1 단계에서 종속성 버전을 변경할 수 있으므로이 설정에 매우 만족합니다.
이제는 내가 유지 관리하는 많은 의존성이 있습니다.
mvn release:prepare release:perform -B
가 지금은 더 자동화 할 메인 프로젝트에서 나는 실행 : 사람들의 릴리스는 기본적으로 자동 매우 간단
mvn versions:update-properties
(기본적으로 나는 또한 실행 : "MVN 버전 : 사용 -releases "를 사용하여 필요한 경우 일반적인 종속성을 변경하지만이 질문의 범위를 벗어납니다.
이 업데이트 속성을 실행하면 내 기본 프로젝트의 속성이 릴리스됨을 알립니다. 그러나 내 모듈이 속성을 사용하여 다른 종속성의 버전을 정의하고 해당 프로젝트의 최신 버전을 사용할 수있는 경우 해당 속성도 변경됩니다.
업데이트 속성으로 인한 피해를 최소화 할 수있는 방법이 있습니까? 버전 : use-release는 속성을 포함하는 을 사용하므로 광산에서만 사용 가능합니다. update-properties와 비슷한 것을 찾을 수 없습니다.
부모님 외에 다른 친구들도 모두 되돌릴 수 있고 커밋/푸시 만 가능하지만 우아하지는 않습니다.
안녕하십니까, 답변 드리겠습니다.를 사용하여 종속성을 다시 구성 해 보겠습니다. –
이 특정 질문에 대한 대답에 동의하지만 속성 섹션을 평가하는 'use-releases'옵션이 있어야하는 것처럼 보입니다. 'update-properties' 목표가 있다는 사실은 이것이 사용 된 패턴임을 나타냅니다. 필자는 멀티 모듈이 아닌 프로젝트에서이 패턴을 사용하여 모든 버전을 중앙 위치에 유지합니다. 예를 들어, 완전히 다른 프로젝트에서 여러 전쟁의 귀를 만드는 pom이 있습니다. 그래서 버전을 맨 아래에 속성으로 유지합니다. – Snekse