ant target的depends属性

ant的target使用depends属性指明对其它target的依赖。可以依赖多个target,被依赖的多个target之间用逗号分隔。

ant会确保被依赖的target首先执行,然后再执行本target。

ant尽量按照depends属性中指明的target出现的顺序来执行(从左到右),但也可能被依赖的某个target先执行(如果更早的target依赖于这个target的话)。

例如,下面的示例中,名字为deploy的target依赖于另外两个target,分别是deploy-tomcat和deploy-appserver,那么deploy-tomcat 和 deploy-appserver这两个target一定会在deploy这个target之前执行:

复制代码
<target name="deploy" depends="deploy-tomcat, deploy-appserver"/>

<target name="deploy-appserver" unless="tomcat">
    <copy file="${build.war.home}/jaxws-${ant.project.name}.war"
          todir="${as.home}/domains/${domain}/autodeploy"/>
</target>

<target name="deploy-tomcat" if="tomcat">
    <copy file="${build.war.home}/jaxws-${ant.project.name}.war"
          todir="${env.CATALINA_HOME}/webapps"/>
</target>

再例如,下面的target有这样的依赖关系

复制代码
<target name="t1"/>
<target name="t2", depends="t5"/>
<target name="t3", depends="t4,t5"/>
<target name="t4"/>
<target name="t5"/>

执行顺序应该为t1->t5->t2->t4->t3

相关推荐
Mahir087 小时前
Spring 循环依赖深度解密:从问题本质到三级缓存源码级解析
java·后端·spring·缓存·面试·循环依赖·三级缓存
RyFit8 小时前
SpringAI 常见问题及解决方案大全
java·ai
石山代码8 小时前
C++ 内存分区 堆区
java·开发语言·c++
绝知此事9 小时前
【算法突围 01】线性结构与哈希表:后端开发的收纳术
java·数据结构·算法·面试·jdk·散列表
无风听海9 小时前
C# 隐式转换深度解析
java·开发语言·c#
一只大袋鼠9 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git
德思特10 小时前
从 Dify 配置页理解 RAG 的重要参数
java·人工智能·llm·dify·rag
YOU OU11 小时前
Spring IoC&DI
java·数据库·spring
один but you11 小时前
从可变参数到 emplace:现代 C++ 性能优化的核心组合
java·开发语言
是码龙不是码农11 小时前
ThreadPoolExecutor 7 个核心参数详解
java·线程池·threadpool