[SPRING] spring-boot-maven-plugin은 형제 모듈 의존성을 깨뜨린다.
SPRINGspring-boot-maven-plugin은 형제 모듈 의존성을 깨뜨린다.
멀티 모듈 메이븐 셋업이 있습니다. 상위 모듈과 두 개의 하위 모듈 (하위), A와 B. 모듈 B는 A에 종속성을가집니다. 그러나 모듈 A에서 spring-boot-maven-plugin을 사용하면 컴파일 종속성이 해결되지 않습니다 모듈 B의 컴파일 목표는 '심볼을 찾을 수 없습니다'및 '패키지가 존재하지 않습니다'라는 오류를 발생시킵니다. 플러그인을 사용하지 않으면 모든 것이 작동하지만이 프로젝트에서 제거 할 수 없습니다.
문제를 재현하는 방법은 다음과 같습니다.
상위 pom.xml
<modelVersion>4.0.0</modelVersion>
<groupId>com.whatever</groupId>
<artifactId>theparent</artifactId>
<version>2.7.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>service</module>
<module>serviceClient</module>
</modules>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
</parent>
모듈 A
<modelVersion>4.0.0</modelVersion>
<artifactId>service</artifactId>
<packaging>jar</packaging>
<parent>
<groupId>com.whatever</groupId>
<artifactId>theparent</artifactId>
<version>2.7.0-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
모듈 B
<modelVersion>4.0.0</modelVersion>
<artifactId>serviceClient</artifactId>
<parent>
<groupId>com.whatever</groupId>
<artifactId>theparent</artifactId>
<version>2.7.0-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<dependencies>
<dependency>
<groupId>com.whatever</groupId>
<artifactId>service</artifactId>
<version>2.7.0-SNAPSHOT</version>
</dependency>
</dependencies>
이제는 모듈 A에 클래스가 있고 모듈 B에 다른 클래스가 있는데이 클래스는 첫 번째 클래스를 가져와 사용합니다. 부모 모듈 수준에서 'mvn clean install'을 실행하면 컴파일이 잘됩니다. 그러나 일단이 플러그인이 모듈 A에 추가되면 :
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>com.whatever.Application</mainClass>
</configuration>
</plugin>
</plugins>
</build>
모듈 B는 모듈 A의 종속성을 더 이상 해결할 수 없으며 모듈 A의 클래스를 볼 수 없다는 것을 나타내는 '패키지가 존재하지 않음', '찾을 수 없음'등의 메시지를 보게됩니다.
이거 버그 야? 누구든지이 문제를 해결할 수 있도록 도와 줄 수 있습니까?
해결법
-
==============================
1.희망이 게시물은 당신을 도울 수 있습니다.
희망이 게시물은 당신을 도울 수 있습니다.
from https://stackoverflow.com/questions/43358016/spring-boot-maven-plugin-breaks-sibling-module-dependency by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring + SOAPExceptionImpl : 여러 부분 메시지 저장 중 오류가 발생했습니다. (0) | 2019.05.17 |
---|---|
[SPRING] 봄 부팅시 모든 테이블 메타 데이터를 얻는 방법 - JPA - 최대 절전 모드? (0) | 2019.05.17 |
[SPRING] spring xml을 설정하여 spring을 확장하는 방법 (0) | 2019.05.17 |
[SPRING] @Component Hibernate 클래스 (0) | 2019.05.17 |
[SPRING] 스프링 웹을 사용하여 게시물 데이터와 함께 https 게시물 요청 보내기 (0) | 2019.05.17 |