为了编译Java项目,我已将ANT_HOME设置为旧版本的ANT。
对于我将其他应用程序部署到服务器计算机,我有另一个名为ANT2的ANT位置。
在部署文件之前,我想将我的ANT_HOME设置为ANT2,为此我有以下ANT脚本
<target name="run">
<exec executable="cmd" failonerror="true">
<env key="ANT_HOME" value="D:\apps\apache-ant-1.8.4"/>
<arg value="/c"/>
</exec>
<property environment="env"/>
<echo message="${env.ANT_HOME}"/>
</target>
但是当我执行上述操作时,我的ANT主页不会更改为D:\apps\apache-ant-1.8.4
,而是ANT_HOME显示为D:\apps\old\ant
我做错了什么,如何解决这个问题?
答案 0 :(得分:1)
此代码不会在子进程中执行
echo message =“$ {env.ANT_HOME}”
所以它显示当前环境中的ANT_HOME(未设置为D:\ apps \ apache-ant-1.8.4)。您应该从cmd应用程序内部打印ANT_HOME以在子进程中查看其值。