2009-12-16 5 views

답변

0

이 원격 저장소를 제어 하시겠습니까? 그렇다면 "-SNAPSHOT"버전 번호를 사용하십시오.

또는 저장소를 제어하는 ​​사람들에게 그렇게하도록 요청하십시오. 의존성이 유동적 인 상태라는 것을 Maven에게 알리는 올바른 방법이다.

만약 당신이 그것을 할 수 없다면/미리 파일을 삭제하는 Maven을 호출하는 배치/쉘 스크립트를 작성하십시오.

0

버전 번호를 변경하지 않고 jar 파일을 5 시간 안에 한 번 업데이트하는 원격 저장소가 있습니다. Pom 파일은 버전이 동일하므로 업데이트 할 수 없습니다. 수동으로 삭제해야 할 때마다. settings.xml을 사용하여 최신 파일을 얻을 수있는 방법이 있습니까?

아니요,이를 수행 할 방법이 없습니다. 고정 버전 (SNAPSHOT과 반대) 인 이슈가 다운로드되면 로컬 저장소에서 제거하지 않는 한 다시 다운로드되지 않습니다. 실제로 고정 된 버전 번호를 변경하지 않고 병을 다시 릴리스하는 것은 EVIL 연습이므로 피해야합니다. 이것은 단지 maven이 작동하는 방식이 아니며, 이것을 수행 할 때 사람들이 실제로 사용하고있는 버전을 예측하는 것은 불가능합니다 (매우 취약한 방식 인 항아리를 로컬 저장소에서 명시 적으로 제거하지 않고도) 예측할 수없는 결과를 초래합니다.

빈번한 릴리스를 처리하는 올바른 방법은 버전 번호를 변경하고 그에 따라 POM을 업데이트하거나 개발 중에 일반적으로 사용되는 SNAPSHOT 버전을 사용하는 것입니다. 원격 저장소에서 최신 버전을 사용할 수있게되면 정의에 따라 SNAPSHOT 버전이 다운로드됩니다. 이것은 당신이 찾고있는 것이며 이것은 이것이 상황을 관리하는 방법입니다. SNAPSHOT에 대한 자세한 내용은 9.3.1.2. SNAPSHOT VersionsMaven: The Definitive Guide 장을 참조하십시오.

0

당신은 당신의 Settings.XML의의 저장소에 항상 에 요소 updatePolicy을 설정할 수 있습니다

<profiles> 
    <profile> 
    <id>default</id> 
    <repositories> 
     <repository> 
     <releases> 
      <enabled>true</enabled> 
     </releases> 
     <snapshots> 
      <enabled>true</enabled> 
      <updatePolicy>always</updatePolicy> 
     </snapshots> 
     <id>snapshots.jboss.org</id> 
     <name>Snapshot JBoss Repository for Maven</name> 
     <url>http://snapshots.jboss.org/maven2/</url> 
     <layout>default</layout> 
     </repository> 
    </repositories> 
    </profile> 
</profiles> 
관련 문제