1

是否可以修改任务并为其添加先决条件?例如,我有一个build.xml要导入的外部文件。它包括一个调试任务。我想将依赖项添加-prebuild-copy到该任务。

我只会创建一个包装器任务,但我的项目包含的任何库都会调用调试目标,我需要确保为所有库-prebuild-copy运行该目标。我可以复制和修改另一个构建文件,但它是 android 附带的,我不想在每次更新 SDK 时都尝试更新我的自定义版本。

4

1 回答 1

1

ANT 有两个用于导入通用构建逻辑的任务:

以下示例使用更现代的 include

例子

|-- build-common.xml
`-- build.xml

项目运行如下

$ ant debug
Buildfile: /home/mark/tmp/build.xml

-prebuild-copy:
     [echo] PREBUILD TARGET

common.debug:
     [echo] I AM A DEBUG TARGET

debug:
     [echo] MY DEBUG TASK

构建-common.xml

<project name="build-common">

    <target name="debug">
        <echo message="I AM A DEBUG TARGET"/>
    </target>

</project>

构建.xml

<project name="demo" default="debug">

    <include file="build-common.xml" as="common"/>

    <target name="-prebuild-copy">
        <echo message="PREBUILD TARGET"/>
    </target>

    <target name="debug" depends="-prebuild-copy, common.debug">
        <echo message="MY DEBUG TASK"/>
    </target>

</project>
于 2012-07-17T18:51:57.597 回答