蚂蚁的
exec
任务经常被复杂的命令行操作阻塞。总的来说,最好坚持多重
执行官
步骤,包含一系列
arg value
s而不是满的
arg line
s。
请改为:
<target name="ruby">
<echo message="Checking Ruby..." />
<exec executable="/usr/bin/ruby">
<arg value="--version"/>
</exec>
<echo message="Checking Ruby done!" />
</target>
<target name="homebrew" depends="ruby">
<echo message="Installing Homebrew..." />
<exec executable="curl" outputproperty="homebrew.install">
<arg value="-fsSL" />
<arg value="https://raw.githubusercontent.com/Homebrew/install/master/install" />
</exec>
<exec executable="/usr/bin/ruby" failonerror="true">
<arg value="-e"/>
<arg value="${homebrew.install}"/>
</exec>
<echo message="Homebrew installation done!" />
</target>
在这里,远程安装脚本首先是curl'd,并使用
执行官
的
outputproperty
属性,然后作为参数传递给ruby。
(注1还添加了
failonerror="true"
安装步骤,但这只是我的一个用例假设。如果需要,可以将其删除。)