[java] 자식 모듈을 구축하지 않고 부모 POM 설치

Maven 프로젝트에 다음 구조의 부모 POM이 있습니다.

             parent
               |
        ---------------
        |             |
      child1       child2

로컬 REPO에 “부모” 의 POM을 설치하여 child1 이 dependencyManagement에서 수행 한 일부 변경 사항을 적용 할 수 있도록 하고 싶지만 “child2” 가 손상되어 빌드되지 않기 때문에 일반 “새로 설치”를 수행 할 수 없습니다 .

maven으로이 작업을 수행하는 적절한 방법입니다 (부모 pom으로 이동하고 “child2” 모듈에 주석을다는 것 제외).



답변

mvn 명령에서 ‘-N’옵션을 사용하십시오.

에서 mvn -h:

-N,-non-recursive 하위 프로젝트로 재귀하지 않음


답변

Guillaume이 실제로 옳고 올바른 옵션이지만 개인적으로 부모님을 별도의 모듈로 유지하는 것이 좋습니다.

상속에 대한 최선의 방법은 다음과 같습니다.

aggregator
|- module1/ (extends parent)
| |- pom.xml
|- module2/ (extends parent)
| |- pom.xml
|- parent/
| |- pom.xml
|- pom.xml

이렇게하면 mvn clean install추가 옵션없이 항상 상위 항목 만 설치할 수 있습니다.

또한 더 많은 프로젝트간에 재사용 할 수 있도록 집계 자 외부에 상위를 가질 수도 있습니다.

부모와 애그리 게이터를 두 가지로 분리하면 많은 이점이 있습니다. 그러나 결국 프로젝트 / 환경에 가장 적합한 것을 선택합니다.


답변