ArchCC가 귀하의 문제에 an acceptible workaround을 제공했지만, 가장 큰 문제는 모듈 개념을 오해하고 있다는 것입니다.
모듈은 런타임 종속성이 아니며 (일반적으로 종속성으로 참조되지 않으면 일반적으로 이해가되지 않지만) 런타임 종속성이 아닙니다. 다중 모듈 프로젝트를 사용하면 공통 구성을 사용하여 한 단계로 복잡한 빌드를 수행 할 수 있습니다. 빌드가 발생하면 배치 된 pom의 <modules>
블록은 아무런 의미가 없기 때문에 모듈이없는 경우 모듈을 지정하는 것이 절대적으로 의미가 없습니다.
프로젝트의 일부분 만 빌드하려는 경우, 해결 방법은 고급 원자로 명령을 사용하는 것입니다. (현재 트리에) 모든 종속성
mvn -am -pl api,client/impl
빌드 모듈 API와 클라이언트/IMPL (중첩 된 모듈은 또한 여기서 일)
mvn -amd -pl core
:
usage: mvn [options] [<goal(s)>] [<phase(s)>]
Options:
-am,--also-make If project list is specified, also
build projects required by the
list
-amd,--also-make-dependents If project list is specified, also
build projects that depend on
projects on the list
-pl,--projects <arg> Build specified reactor projects
instead of all projects
-rf,--resume-from <arg> Resume reactor from specified
예 : 여기 mvn --help
에서 발췌입니다
빌드 모듈 코어 및이를 종속품으로 참조하는 모든 모듈
mvn -rf my/deep/nested/module
지정된 모듈에서 원자로 빌드를 재개하십시오 (시나리오 : 25 번째 모듈의 단위 테스트로 인해 실패한 거대한 빌드가 있음). 그래서 당신은 테스트를 수정하고) 재 구축 이전의 모든 모듈의 시간을 절약, 당신이 어디에서
편집을 계속 : 난 그냥 당신의 모듈은 루트 디렉토리 외부에있는 것을 알고 있습니다. 내 의견으로는, 그것은 위에 명시된 원자로 기능을 깨뜨리기 때문에 그것은 maven 모듈 개념에 위배된다.
여기에서 저장소 사용은 어디에 있습니까? –