<target name="war.import" depends="svn.task,war.name">
<echo>A: ${war.name}</echo>
</target>
有時(shí)用
兩種方法有什么不同呢?<echo>A: ${war.name}</echo>
</target>
有時(shí)用
<target name="war.import" depends="svn.task">
<antcall target="war.name"/>
<echo>B: ${war.name}</echo>
</target>
<antcall target="war.name"/>
<echo>B: ${war.name}</echo>
</target>
通常來(lái)看,感覺(jué)沒(méi)什么不同,其實(shí)是有不同的。只不過(guò)差異在一些不太明顯的地方。
如果單純的是兩個(gè)過(guò)程調(diào)用,就是沒(méi)有區(qū)別的。區(qū)別在于,用depends的方式調(diào)用,那么war.name任務(wù)中的設(shè)置或者修改的屬性值可以在后面的任務(wù)中使用,而用antcall的調(diào)用就不可以。
如:如war.name任務(wù)如下:
<target name="war.name">
<echo>
task war.name need to pass 4 parameters:
project.name
release.version
deploy.type
</echo>
<property name="war.name" value="${project.name}-${release.version}_${deploy.type}-${today}-${build.number}.war"/>
<property name="war.file" value="${bin.dir}/${war.name}"/>
<property name="war.md5.name" value="${war.name}.MD5"/>
<property name="war.md5.file" value="${bin.dir}/${war.md5.name}"/>
<echo>
|-------------------------------------------------------------------------------|
war.name : ${war.name}
war.file : ${war.file}
war.md5.name : ${war.md5.name}
war.md5.file : ${war.md5.file}
|-------------------------------------------------------------------------------|
</echo>
</target>
那么第一種調(diào)用方法,就能正確取得war.name屬性的值,而第二種調(diào)用就不能。所以建議盡可能的使用depends進(jìn)行任務(wù)調(diào)用。
區(qū)別在細(xì)微的地方,不過(guò)也值得注意。
<echo>
task war.name need to pass 4 parameters:
project.name
release.version
deploy.type
</echo>
<property name="war.name" value="${project.name}-${release.version}_${deploy.type}-${today}-${build.number}.war"/>
<property name="war.file" value="${bin.dir}/${war.name}"/>
<property name="war.md5.name" value="${war.name}.MD5"/>
<property name="war.md5.file" value="${bin.dir}/${war.md5.name}"/>
<echo>
|-------------------------------------------------------------------------------|
war.name : ${war.name}
war.file : ${war.file}
war.md5.name : ${war.md5.name}
war.md5.file : ${war.md5.file}
|-------------------------------------------------------------------------------|
</echo>
</target>
那么第一種調(diào)用方法,就能正確取得war.name屬性的值,而第二種調(diào)用就不能。所以建議盡可能的使用depends進(jìn)行任務(wù)調(diào)用。
區(qū)別在細(xì)微的地方,不過(guò)也值得注意。
|----------------------------------------------------------------------------------------|
版權(quán)聲明 版權(quán)所有 @zhyiwww
引用請(qǐng)注明來(lái)源 http://www.aygfsteel.com/zhyiwww
|----------------------------------------------------------------------------------------|