跳至内容

Apache Ant/任务

来自维基教科书,开放的书籍,为开放的世界

任务是可以执行的一段代码。

任务可以有多个属性(或者参数,如果你愿意)。属性的值可能包含对属性的引用。这些引用将在任务执行之前被解析。

任务有一个通用的结构

<name attribute1="value1" attribute2="value2" ... />

其中 name 是任务的名称,attributeN 是属性名称,valueN 是该属性的值。

有一组内置的任务,以及许多可选的任务,但编写自己的任务也很容易。

所有任务都共享一个任务名称属性。该属性的值将用于 Ant 生成的日志消息中。

任务可以被分配一个 id 属性

<taskname id="taskID" ... />

其中 taskname 是任务的名称,taskID 是该任务的唯一标识符。您可以在脚本或其他任务中通过此名称引用相应的任务对象。例如,在脚本中您可以这样做

<script ... >

 task1.setFoo("bar");

</script>

来设置此特定任务实例的 foo 属性。在另一个任务(用 Java 编写)中,您可以通过 project.getReference("task1") 访问实例。

注意 1:如果 "task1" 还没有运行,那么它还没有被配置(即,还没有设置任何属性),如果它以后要被配置,您对实例所做的任何事情都可能会被覆盖。

注意 2:未来的 Ant 版本很可能不会与这种行为向后兼容,因为很可能根本不会有任务实例,只有代理。

华夏公益教科书