以下是我正在处理的批处理脚本代码块:
ECHO off
IF NOT EXIST "%ANT_HOME%" (
SET ANT_HOME=%~dp0%build\apache-ant-1.8.2
SET ANT_BIN=%~dp0%build\apache-ant-1.8.2\bin
SET PATH | FIND "%ANT_HOME%;%ANT_BIN%"
)
cd "build\Run"
ant -q
cd ../..
echo "Program Terminated!"
exit
现在,我的 build.xml 文件位于 build\Run 文件夹内,所以在运行 ant -q 命令之前,我首先要导航到 build/Run(注意:我不想改变这种导航方法)。
一旦执行 ant -q 命令,以下事情就会发生:
- 将环境变量设置为条件。
- 切换到 build\Run 目录。
- 由于我的 build.xml 在 Run 目录中,因此 ant -q 命令可以正常运行。
- Ant 已经正确执行并退出脚本。
- 现在我的当前路径将是 build\Run!正确 <= 在 ant 终止后我不希望出现这种情况,相反我想要退出 build\Run,这就是为什么我使用
cd../..
的原因。
但问题是,在 ant -q 后我无法执行命令。这是因为程序控制权从 BATCH => ANT
转移。
是否有任何方式可以从 bat 脚本本身执行 ant 命令后的命令?
SET PATH | FIND“!ANT_HOME!;!ANT_BIN!”
不会设置您的路径 - 它只会告诉您是否存在添加内容... - Stephan