将antcall目标中定义的属性传递回调用目标

hha*_*lai 16 ant

我对Ant很陌生,但我已经体验过创建通用蚂蚁目标的非常好的模式,这些目标是用不同参数的antcall任务调用的.

我的例子是编译目标,它使用复杂的构建命令编译多个系统,这对于每个系统来说有点不同.通过使用上述模式,可能无法为该编译命令创建复制粘贴代码.

我的问题是,我不知道有什么方法可以将返回值(例如编译器的返回值)传递回调用antcall任务的目标.那么我的方法是病态的,并且根本不可能从antcall任务返回值,或者你知道任何解决方法吗?

谢谢,

Jos*_*seK 16

使用antcallback从蚂蚁的contrib罐子代替antcall

<target name="testCallback">
    <antcallback target="capitalize2" return="myKey">
    </antcallback>
    <echo>a = ${myKey}</echo>
</target>

<target name="capitalize2">
    <property name="myKey" value="it works"/> 
</target>
Run Code Online (Sandbox Code Playgroud)

输出:

testCallback:

capitalize2:
     [echo] a = it works

BUILD SUCCESSFUL
Run Code Online (Sandbox Code Playgroud)


小智 5

一种方法是使用"echo file = ...."或PropertyFile任务将属性写入临时文件.然后在需要的地方回读房产.Kludge但是有效.