从脚本任务添加子元素

时间:2014-01-08 19:52:55

标签: ant

我有一个ivy:resolve任务作为我的蚂蚁脚本的一部分。我还有一个script任务进行一些处理并生成零个或多个模块描述符,需要从ivy:resolve中排除。

所以我需要一种方法让script任务生成一些exclude元素并将它们作为子元素添加到ivy:resolve任务中,这样最终它最终会得到:

<ivy:resolve file="${ivy.file.path}">
    <exclude org="generated" module="by a script task" />
    <exclude org="generated" module="by a script task" />
    <exclude org="generated" module="by a script task" />
</ivy:resolve />

1 个答案:

答案 0 :(得分:0)

您不使用ANT属性吗?

  <target name="init">
    <script language="javascript"><![CDATA[
      project.setProperty("org.to.exclude", "log4j");
      project.setProperty("module.to.exclude", "log4j");
    ]]></script>
  </target>

  <target name="resolve" depends="init">
    <ivy:resolve>
      <dependency org="org.apache.cxf" name="cxf-api" rev="2.7.8"/>
      <exclude org="${org.to.exclude}" module="${module.to.exclude}" />
    </ivy:resolve>
  </target>