2013-07-02 2 views
4

Mac 10.7.5에서 Ant 1.9를 사용 중이며 Ivy를 설치했습니다. 의존성을 다운로드하는 데 문제가 있습니다. 내 아이비 해결 대상으로이 build.xml 파일이Ivy를 사용하여 종속성 문제를 해결하려고하면 Ant 빌드가 중단됩니다.

다음
<project xmlns:ivy="antlib:org.apache.ivy.ant" name="hello-ivy" default="run"> 

    <target name="resolve" description="retrieve dependencies with ivy"> 
     <ivy:retrieve /> 
    </target> 
    ... 
    <target name="createSOAPClientJars" depends="resolve"> 
     <generateSOAPClientJar serviceName="bsexample" 
         wsdlPath="${bsexample.service.wsdl.url}"/> 
    </target> 

</project> 

내 build.xml 파일과 같은 수준에서이 ivy.xml 파일이 : 나는 실행할 때

<ivy-module version="2.0"> 
    <info organisation="org.apache" module="hello-ivy"/> 
    <dependencies> 
      <dependency org="com.sun.xml.ws" name="jaxws-tools" rev="2.1.4"/> 
    </dependencies> 
</ivy-module> 

을하지만 내 개미 목표, 모든 것만 멈춤

Daves-MacBook-Pro:antws davea$ ant createSOAPClientJars 
Buildfile: /Users/davea/antws/build.xml 

resolve: 
[ivy:retrieve] :: Apache Ivy 2.3.0 - 20130110142753 :: http://ant.apache.org/ivy/ :: 
[ivy:retrieve] :: loading settings :: url = jar:file:/opt/apache-ant-1.9.0/lib/ivy-2.3.0.jar!/org/apache/ivy/core/settings/ivysettings.xml 
[ivy:retrieve] :: resolving dependencies :: org.apache#hello-ivy;[email protected] 
[ivy:retrieve] confs: [default] 

내 목표를 해결하고 킥 스타트하려면 종속성을 얻으려면 무엇이 누락 되었습니까?

+0

아이비 설정을 넣을 수 있습니까? 해결 방법은 네트워크 시간 초과, 프록시 설정 등 여러 가지로 인한 것일 수 있습니다. – David

+0

이 네트워크는 두 개의 다른 네트워크에서 작동하므로 모든 네트워크 문제보다 설정이 중요합니다. 또한 ivysettings.xml 파일은 어디에 있습니까? 나는 아무데도 만들지 않았고 기본값이 사용될 것이라고 생각했다. – Dave

답변

1

기본 담쟁이 설정을 사용하고있는 것 같습니다. 이것은 아이비가 Maven Central (오픈 소스 자바 소프트웨어의 가장 큰 저장소)에서 아티팩트를 다운로드하려고 시도한다는 것을 의미합니다.

해결 방법이있는 경우 네트워크 프록시를 사용해야 할 가능성이 큽니다. Ivy는 연결을 시도하고 결국 시간 초과됩니다. 불행히도 시간 제한을 지정하는 기능이 필요하다는 공개 문제 IVY-735이 있습니다. 아이비가 기본적으로 얼마나 기다리는 지 알 수는 없습니다 .....

1

데이브의 원래 게시물에서 설명한 것과 비슷한 문제가있었습니다. ivysettings.xml에 나열된 리포지토리 URL뿐 아니라 인터넷 연결도 점검했는데 모든 것이 제대로 보였습니다.

나는 명령이 다운로드 URL로 해결되지 않는 이유를 조사하는 동안 백그라운드에서 'ant runtime'명령을 기다리고 있었고 2 ~ 3 분 동안 기다리면 패키지 다운로드가 시작되었습니다 .

잘 모르겠지만, 메이븐 리포지토리 서버에서 초기 요청을 받으면 서버 측에 기본 대기 시간이있을 수 있습니다.

+0

인내심이 나를위한 열쇠였습니다! –

0

나는이 질문이 다소 오래되었다는 것을 알고 있지만, 새로운 Mac을 설치 한 후에는 아이비 해결 문제가 발생했습니다. 내 옛날 쉘 프로필에서 나는했다 : 나는 회사 방화벽 뒤에 있어요 때의

export ANT_OPTS="-Dhttp.proxyHost=xyz-proxy -Dhttp.proxyPort=8080" 

이 (xyz-proxy8080 적절한 변경).

개미가 어디에 매달려 있는지 (유용 : ant -v test) 알고 싶다면 https 이상의 아티팩트를 다운로드하려고 시도한 것이 분명했습니다. 대신 이제는 다음을 사용합니다.

export ANT_OPTS="-Dhttps.proxyHost=xyz-proxy -Dhttps.proxyPort=8080 -Dhttp.proxyHost=xyz-proxy -Dhttp.proxyPort=8080" 

즉. httpshttp 프록시 항목을 모두 정의하십시오 (다시 적절하게 xyz-proxy8080으로 변경).

빙고, 이제는 모두 정상적으로 작동합니다.