2011-04-18 3 views
0

나는 이것이 이전에 물어 보았지만 꽤 오랫동안 인터넷 검색을 한 후에 정확한 답을 찾지 못하는 것 같아서 ... :)Grails에서 Ant를 사용하여 환경 변수를 변경하는 방법은 무엇입니까?

어쨌든, 우리의 빌드 서버에는 2) 다른 버전의 Grails와 Java 실행; 하나는 JDK 1.5에서 1.3.3이고 다른 하나는 JDK 1.6에서 1.3.6입니다. 이제이 두 프로젝트에 대한 WAR 파일을 작성/생성 할 때 ANT 스크립트를 통해 GRAILS_HOME 및 JAVA_HOME 환경 변수를 자동으로 전환해야합니다. <

고려 :

... 
<target name="clean"> 
... 
</target> 

<target name="war" depends="clean"> 
... 
</target> 
... 

I, 그것은 물론,하지 war이 실행될 때 (내가 사용 해봤 동일합니다 clean 수행되고있는 시점에서 env't 변수를 설정하는 경우 배치 파일 및 그것이 효과가 있었다고해도 지저분하고 건조하지 않았습니다 ... 따라서 대안을 찾고 있습니다).

이제는 macrodef이 몇 개의 포럼에서 던져지고있는 것을 보았습니다. 그러나이 경우 어떻게해야하는지 명확한 샘플을 얻을 수 없습니다. 내가 할 수있는 것에 대한 제안이나 조언

도움을 주시면 감사하겠습니다.

감사합니다.

답변

3

나는 비슷한 사용 사례가 있고 나는 또한 동일한 것을 찾고있다. 지금까지 나는 이것들을 가지고있다, 나는 내일이 도달 사무실을 시도 할 것이다.

  1. <java classname="ShowJavaVersion" classpath="." 
    jvm="path-to-java14-home/bin/java" fork="true" 
    taskname="java1.4"> 
    
  2. <property environment="env"/> 
    <exec ...> 
        <env key="PATH" path="${env.PATH}:${basedir}/bin"/> 
    </exec> 
    
  3. 배치 파일을 실행.

관련 문제