2012-06-15 4 views
0

다음을 수행하는 Maven 플러그인을 작성하려고합니다. 모듈의 모든 종속성을 가져 와서 전이 의존성이 현재 모듈의 모든 형제 모듈에 전이 종속성이 있는지 알아보십시오.Maven과 Aether를 사용하여 복잡한 종속성 해결 - 어떻게?

  • 현재 모듈의 형제 자매를 찾기 위해 모든 모듈을 얻을 다음 모듈의 부모 (POM 전용 부모)를 얻고 :

    내 생각은 다음과 같다.

  • 모듈의 전이 의존성을 가져옵니다 (그러나 그룹 ID에만 해당).
  • 전 이적 종속성 각각에 대해 전 이적 종속성을 가져 와서 이들 중 하나가 형제 모듈 중 하나인지 확인합니다.

나는 Maven 2 스타일로 시도했지만 이제 Aether로 끝났다. 그러나 Aether로 원하는 것을 할 수 있는지 여부는 확실하지 않습니다.

현재 POM 전용 부모 (Aether가 아니라 MavenProject 포함)를 얻을 수 있으며 전이 의존성을 얻은 다음 그룹 ID로 아티팩트 만 유지하도록 필터링 할 수 있습니다. Aether에서 Maven FilterArtifacts와 동일한 기능을 찾지 못했습니다.

그래서 질문은 다음과 같습니다. 어떻게하면 내 목표를 올바르게 수행 할 수 있을지 생각할 수 있습니까? 오드로만 할 수 있을까요? 그렇다면 어떻게해야합니까? 아니면 Maven 2와 Aether를 함께 사용해야합니까? (조금했지만 SNAPSHOT 버전과 타임 스탬프 SNAPSHOT 버전의 차이점이 조금 복잡합니다)

어쨌든, 모든 도움을 주시면 감사하겠습니다!

당신은 당신이 원하는 일을하는 데 도움이 될 수 있습니다 jcabi-aether 라이브러리 (I 개발자 중 하나를 해요), 사용할 수 있습니다
+0

Maven 3으로 업데이트 할 수 있습니까? 의존성을 관리하기 위해 Aether를 사용합니다. 목표를 달성하는 것이 더 쉬울 것입니다. – Oliver

+0

예, Maven 3을 사용하고 있습니다 - Aether가 Maven 2와 함께 작동하지 않는다고 생각합니다. – eerriicc

답변

0

:

  1. 은 종속성 받기 MavenProject
  2. 에서 모듈의 목록을 가져 오기를
  3. 하나 그 일을 통해 루프와 3

    메이븐과 함께 잘 작동합니다

com.jcabi.aether.Aether를 사용하여 해결