Apache Ant正在创建奇怪的目录

时间:2012-09-13 15:50:07

标签: java ant build.xml

我正在定义一个新的构建文件和(由于这个问题范围之外的原因)我需要将它放在projectRoot/build内,而不是普通的projectRoot

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内的事实。提前谢谢!

2 个答案:

答案 0 :(得分:5)

你的怀疑是正确的。设置basedir会更改build.properties文件的位置。将导入更改为:

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

它应该有用。

答案 1 :(得分:0)

property file="build/build.properties"/>应该修复它

这里需要30个角色.. damm