2013-04-29 2 views
1

Eclipse에서 사용하고있는 ant/ivy 프로젝트가 있습니다. 문제는 이클립스에서 ivyde가 내 ivysettings.xml의 FileResolver에 대해 불평하며 경로가 절대적이어야한다고 주장합니다. 그 이유는 환경 변수를 평가하는 데 실패했기 때문입니다.FileResolver, 환경 변수 및 ivyde

다음은 인해 절대 경로 요구 사항에 ivyde 구문 분석에 실패 내 ivysettings.xml 파일입니다 :

<ivysettings> 
    <properties environment="env"/> 
    <properties file="./ivysettings.properties"/> 
    <settings defaultResolver="chain"/> 
    <resolvers> 
    <filesystem name="local"> 
     <ivy pattern="${repository.dir}/[module]/ivy.xml" /> 
     <artifact pattern="${repository.dir}/[module]/[artifact].[ext]" /> 
    </filesystem> 
    <chain name="chain"> 
     <resolver ref="local"/> 
     <ibiblio name="maven2" m2compatible="true"/> 
    </chain> 
    </resolvers> 
    <modules> 
    <module organisation="org.example" resolver="local"/> 
    </modules> 
</ivysettings> 

ivysettings.properties에는 다음이 포함

repository.dir=${env.githome}/metademo/ivy_build/repository 

개미이 행복이다, 하지만 아이비드는 {$ env.githome}을 해결하지 못합니다. 다른 개발자 환경을위한 FileSystem 해석자에 대한 '절대 경로'요구 사항을 수행 할 수있는 방법이 필요합니다 ... 환경 변수를 사용하여이를 참조하십시오. 아이비드에이를 어떻게 인식 시키나요?

답변

1

Ant 또는 Eclipse와 같은 다른 환경에서 구성 작업을 수행하려면 외부 변수와 독립적이어야합니다. ivysettings.xml 파일 및 특성 파일은 경로를 해결하기에 충분해야합니다.

여기에서는 Ant를 통해 env.* 속성을 설정했습니다. propertiesenvironment 속성을 사용하여 Ivy가 자체적으로 수행하도록해야합니다.

cf http://ant.apache.org/ivy/history/latest-milestone/settings/properties.html

+0

Nicolas에 답해 주셔서 감사합니다. 귀하의 진술에 의해 나는 env. * 속성을 설정하기 위해 개미를 사용하고 있다고 혼란 스럽습니다. ant ivy : settings 대상이로드되거나 ivyde가로드 될 ivysettings.xml에 속성이로드되고 있습니다. – ticktock

+1

전체 컨텍스트가 없지만 빌드 어딘가에''가있는 것 같습니다. 그래서 아이비가 앤트 안에서 동작 할 때 앤트 속성을 볼 수 있기 때문에'env.githome'을 적절히 해결할 수 있습니다. 그러므로 앤트 내에서보다는 아이비 내에서 'env. *'속성 설정을 할 것을 제안한다. –

+1

내 다른 문제는 환경 변수를 볼 수있는 일식 (응용 프로그램)을 받고 있었다 .. 맥 개발자 : launchctl setenv ticktock