2017-04-18 4 views
0

나는 다음과 같은 종속성 트리가 :메이븐 의존성 제외

Project A 
    ----Project B 
      -----Project D 
       --------Project G 
    ----Project C 
      -----Project E 
       --------Project H 
      -----Project F 

프로젝트 G의 항아리는 더 이상 사용할 수 및 시도가 빌드하는 동안 그것을 다운로드하지되어야한다.
유일한 접근 치어는 그 그래서 우리는이 (가) 치어에 다음을 추가 한
프로젝트 B의 종속성이 들어 프로젝트 A,의 :

<dependency> 
     <groupId>xxxxx</groupId> 
     <artifactId>Project B</artifactId> 
     <version>xxxx</version> 
     <scope>compile</scope> 
     <exclusions> 
     <exclusion> 
      <artifactId>Project G</artifactId> 
      <groupId>xxxxxx</groupId> 
     </exclusion> 
     </exclusions> 
</dependency> 

종속성 작품의 높은 수준에서 제외를 추가 할 것인가를 ?
빌드 과정에서 Project G가 다운로드되지 않도록하려면 어떻게해야합니까?

+0

프로젝트 E는 B가 아닌 프로젝트 C의 종속성입니다. 제외해야합니다. – Jens

+0

'mvn dependency : tree'를 사용하여 참조되는 위치를 찾습니다. – Jens

+0

코드가 제대로 작동해야합니다. – Jens

답변

0

예. 예외는 모든 수준에서 작동합니다. 일반적으로, 프로젝트 D가 종속성의 직접적인 원인이기 때문에 B 대신에 프로젝트 D에 대해 제외를 사용합니다.

그러나 전역 제외 명령문이 없기 때문에 다른 경로에서 G를 종속성으로 가져올 수 있습니다.