1
여러 하위 모듈이있는 라이브러리가 있습니다. 상위 POM에 라이브러리의 버전을 설정했습니다.Maven BOM (Bill of Materials)의 단일 항목에있는 모든 Maven 하위 모듈의 버전 설정
<groupId>com.softtech</groupId>
<artifactId>BatchLibrary</artifactId>
<version>2.1</version>
<packaging>pom</packaging>
또한이 라이브러리가 정의 된 Maven Bill of Materials (BOM) 프로젝트를 만들었습니다.
먼저 경우에서, I는 두 번째 경우에서
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.softtech</groupId>
<artifactId>BatchLibrary</artifactId>
<version>2.1</version>
</dependency>
</dependencies>
</dependencyManagement>
아래로 BOM의 전체 라이브러리의 버전을 설정 I 아래
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.softtech</groupId>
<artifactId>BatchLibrary-core</artifactId>
<version>2.1</version>
</dependency>
<dependency>
<groupId>com.softtech</groupId>
<artifactId>BatchLibrary-web</artifactId>
<version>2.1</version>
</dependency>
</dependencies>
</dependencyManagement>
같이 개별적 라이브러리의 각 서브 모듈의 버전을 설정 이 BOM을 프로젝트에 추가했습니다. 내 프로젝트에서 라이브러리의 하위 모듈을 버전없이 선언 할 때. 위에서 언급 한 첫 번째 경우, 내가
누락 오류가 발생, 그것을 잘 작동합니다.dependency.version는 두 번째 경우
BOM이 작동하는 방식입니까? 내 BOM에 버전이있는 모든 하위 모듈을 개별적으로 정의해야합니까, 아니면 버전으로 내 라이브러리의 상위 POM을 정의 할 수 있습니다. 해야한다면? 내 사건에서 왜 효과가 없습니까?