2014-10-24 12 views
3

Maven 3.2를 사용 중입니다. 내 치어 위해 어떤 단계를 실행할 때마다 나는 응용 프로그램은 항상 의존성에 대한 몇 가지 메타 데이터를 다운로드하려고 시도 (예 : "MVN 설치") 내 pom.xml 파일이 의존성 (A WAR 프로젝트)이미 내 repo에있는 이슈의 Maven-metadata.xml을 Maven에서 다운로드하지 못하게하려면 어떻게해야합니까?

  <dependency> 
        <groupId>joda-time</groupId> 
        <artifactId>joda-time</artifactId> 
        <version>1.6.2</version> 
        <scope>provided</scope> 
      </dependency> 

이 ...

Downloading: http://repo.spring.io/milestone/joda-time/joda-time/maven-metadata.xml 

어떻게하면 Maven이 그 일을 멈추라 고 말합니까? 내 로컬 Maven 저장소에 이미 이슈가 캐시되어 있습니다.

감사합니다. Dave

+0

[종속성 메커니즘 소개] (https://maven.apache.org/guides/introduction/introduction-to- dependency-mechanism.html)를 읽으셨습니까? 아마도 _Transitive Dependencies_가 여기에 적용됩니다. –

+0

또는'.daml '을 살펴보면'joda-time' 1.6.2는 4 살이고 최신 버전은 2.5라는 것을 알 수 있습니다. ;-) –

+0

리포지토리에 대한 구성을 확인하고 어떤 식 으로든 updatePolicy가 설정되어 있는지 확인하십시오. – khmarbaise

답변

7

아마도 업데이트 정책을 명시 적으로 지정해야합니다. 이 답변을 참조하십시오 : Why is Maven downloading the maven-metadata.xml every time?

<pluginRepositories> 
<pluginRepository> 
    <id>central</id> 
    <url>http://gotoNexus</url> 
    <snapshots> 
     <enabled>true</enabled> 
     <updatePolicy>daily</updatePolicy> 
    </snapshots> 
    <releases> 
     <enabled>true</enabled> 
     <updatePolicy>never</updatePolicy> 
    </releases> 
</pluginRepository> 

3

이 어딘가에 당신의 종속성 트리에 스냅 샷 또는 버전 범위 중 하나가 (직접 또는 전이 의존성)을 사용하는 것을 의미한다. 두 경우 모두 솔루션은 동일합니다. 버전을 특정 릴리스에 고정하십시오. 직접 종속성 또는 종속성 관리로 잠근 건가요?

+1

필자의 경우 aws-java-sdk-core에는 버전 범위를 사용하는 joda-time에 대한 종속성이 있습니다. aws-java-sdk-core에서 종속성을 제외하고 joda-time을 잠긴 버전의 POM에 직접 포함시켜이 문제를 해결했습니다. – lucasweb