2014-11-03 1 views
1

Launch4j를 사용하고 해당 구성에 ${dist} 속성을 사용합니다.Launch4j 구성 파일에서 속성 확장을 사용하는 방법

<project ...> 
    <property name="dist" location="/temp/dist" /> 
    <launch4j> 
     <config headerType="gui" outfile="${dist}/myprogram.exe" 
      dontWrapJar="false" jarPath="${dist}/myprogram.jar"> 
      ... 
     </config> 
    </launch4j> 

</project> 

Launch4j 그러나 루트 요소로 <launch4jConfig>으로, 자신의 XML 구성 파일을 사용할 수 있습니다 :

를 개미에서 작업하고 인수가 직접 build.xml 파일에있을 때

그것은 작동합니다. XML : my_launch4j_config.xml에서

<launch4j configFile="my_launch4j_config.xml" /> 

:

<launch4jConfig> 
    <headerType>gui</headerType> 
    <outfile>${dist}/myprogram.exe</outfile> 
    <dontWrapJar>false</dontWrapJar> 
     <jar>${dist}/myprogram.jar</jar> 
     ... 
</launch4jConfig> 

이 경우 ${dist}은 확장되지 않으며 %dist% 또는 시도한 모든 것 ... 솔루션이 launch4j 구성 파일의 등록 정보를 사용합니까?

+1

filterset을 사용하여 복사하여 'config.xml'을 사용하기 전에 템플릿을 "확장"할 수 있습니다. 예를 들어, http://ant.apache.org/manual/Types/filterset.html – halfbit

답변

1

launch4j 코드는 이러한 매개 변수 대체를 허용하지 않았지만이 동작을 변경할 수 있습니다 (net.sf.launch4j.config.ConfigPersister 수정). 나는 그것을위한 충분한 시간이있을 때 Sourceforge 프로젝트에서 확인한다.

+0

'ConfigPersiser'의'ant'에 ​​대한 바람직하지 않은 의존성을 나타 내기 때문에이 변경을 실제로 확인하지 않을 것입니다. @halfbit의 [comment] (http://stackoverflow.com/questions/26714942/how-use-property-expansion-in-a-launch4j-config-file/26717871#comment42020691_26714942)가 더 좋습니다. –

관련 문제