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