2012-09-13 39 views
0

我定義一個新的構建文件和(對於這個問題的範圍之外的原因),我需要把它裏面projectRoot/build,而不是正常的projectRootApache Ant是創建離奇目錄

MyProject 
    src/ 
     <Java source> 
    build/ 
     build.xml 
     build.properties 

所以內build.xml

<project name="myproject-build" basedir=".."> 
    <property file="build.properties"/> 

    <target name="mkdirs"> 
     <mkdir dir="${gen.dir}"/> 
    </target> 
</project> 

而且裏面build.properties

gen.dir=generated 

所以,如果我在命令行中運行mkdirs,你會期望它產生以下的目錄結構:

MyProject 
    src/ 
     <Java source> 
    generated/ 
    build/ 
     build.xml 
     build.properties 

但是,相反,我得到:

MyProject 
    src/ 
     <Java source> 
    ${gen.dir} 
    build/ 
     build.xml 
     build.properties 

這是怎麼回事上?爲什麼Ant不能正確導入build.properties文件?或者還在發生其他事情?我懷疑它與basedir有關,但我無法改變版本存在於build/build.xml內部的事實。提前致謝!

回答

5

您的懷疑是正確的。將basedir設置更改爲查找build.properties文件的位置。改變你的進口到這個:

<property file="build/build.properties"/> 

它應該工作。

0

property file="build/build.properties"/>應該修復它

在這裏需要30個字符..達姆