2012-12-26 1 views

답변

1

예를 "1.1.18"를 반환하고 것이다

$ ant resolve com.internal.shared.pkg latest.release 

그것은 가능하다, 그러나 그것은 당신의 부분에 많은 팔꿈치 기름을 가지고 갈 것이다. build.xml 파일에 개미 <target>을 작성해야합니다.

목표는 인라인 모드에서 <ivy:resolve> 작업을 사용합니다. 즉, 조직, 모듈개정을 제공하고 Ivy가 다운로드를 시도합니다.

거기에서 몇 가지 옵션이 있습니다. 보고서를 생성하는 가장 쉬운 방법 인 것 같아서 <ivy:report>을 살펴 보았습니다. 그러나 <ivy:retrieve>을 통해 다운로드하고 다운로드 한 내용을 보는 것이 더 쉬울 수도 있습니다. 이 일에

$ ant -Dmy.org=commmons-logging \ 
    -Dmy.module="commons-logging" \ 
    -Drev="latest.release" resolve.me 

여전히 관심이 : 그럼

<ivy:resolve 
    inline="true" 
    organisation="${my.org}" 
    module="${my.module}" 
    revision="${my.rev}" 
    conf="master" 
    resolveId="test.me"/> 

, 당신은을 통해 호출 것 :

여기 내 <ivy:resolve>가 어떻게 생겼는지입니까?

+0

나는이 기능이 내장되어 있기를 바랬다. 상징적 이름이 무엇인지 결정하는 유일한 방법은 실제로 지정된 개체를 다운로드하는 것이다. 그래도 고마워. – Tossrock

0

그 해결 유물을 기반으로 속성을 만들 수있는 사용 가능한 아이비 작업이 속성입니다 :

<project name="demo" default="resolve" xmlns:ivy="antlib:org.apache.ivy.ant"> 

    <target name="resolve"> 
     <ivy:artifactproperty name="[artifact].version" value="[revision]"> 
      <dependency org="commons-logging" name="commons-logging" rev="latest.integration"/> 
     </ivy:artifactproperty> 

     <echo message="Commons logging latest = ${commons-logging.version}"/> 
    </target> 

</project> 

더 편리한 방법은 명령 줄에서이 작업을 수행 없습니다. 희망이 도움이됩니다.

주 :

  • 버전 담쟁이의 2.3 post resolve tasks에 중첩 된 종속 태그를 지원합니다.