내 다중 모듈 프로젝트는 공용 (오픈 소스) 및 비공개 (공개되지 않은) 모듈로 구성됩니다. master-public과 master-private을 참조하는 master-all pom 파일을 만들어서 일부 플러그인 & 명령이 모든 프로젝트 (예 : cobertura)를 인식하도록해야합니다. master-all은 master-private을 참조 할 때 비공개가됩니다.maven 다중 모듈 프로젝트에서 parent pom을 참조하지 마십시오
문제는 마스터 - 대중이 그 부모를 참조해야한다는 것입니다 마스터 - 모든 공용 모듈의 사용자는이를 구축 할 수 없습니다, 그래서 개인입니다 : 마스터에
이<groupId>group</groupId>
<artifactId>master-public</artifactId>
<parent>
<groupId>group</groupId>
<artifactId>master-all</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
중첩 마스터 공개 -private는 maven을위한 해결책이 될 수 있지만, git의 엉망이 될 것입니다.
깨끗한 방법이 있습니까?
동의하지만 공개 + 비공개로 작업하려면 플러그인 (예 : cobertura)을 어떻게 마련 하시겠습니까? 예를 들어 공용 API의 테스트를 개인용 부분에 남기고 싶다면 두 가지 모두에 액세스 할 수있는 pom 파일에서 cobertura를 시작해야합니다. 그러면 테스트를 시작하기 전에 API가 인스트루먼트 될 수 있습니다. 간단한 의존성 개인 -> 공개. – Martin
공개 제품의 테스트를 공개적으로 검토하는 것을 진지하게 고려해야합니다. 절대적으로 그렇게 할 수 없다면, 계측 된 바이너리를 Maven 저장소에 배치하고 비공개 테스트를 실행할 때 사용할 수 있습니다. – rec
그것은 실제로 질문에 대답하지 않지만 다르게 작동하도록 권장하므로 답변을 확인합니다. 감사합니다. – Martin