从批处理文件运行ant:以后的命令不运行

时间:2010-12-08 18:03:48

标签: ant copy batch-file

我有一个运行ant的批处理文件,然后复制其中一个生成的文件:

ant -Dproject.version=1.1.2 release published
copy /Y D:\dir1\MyJar.jar   D:\dir2\MyJar.jar

当我运行批处理文件时,ant运行成功,但是复制语句永远不会发生,虽然如果我输入它就可以正常工作,并在ant任务完成后按Enter键。

这里发生了什么?

2 个答案:

答案 0 :(得分:46)

我遇到了同样的问题而魔法call做到了。

在您的批处理文件中尝试:

call ant -Dproject.version=1.1.2 release published
copy /Y D:\dir1\MyJar.jar   D:\dir2\MyJar.jar
但是,不能告诉你它为什么会起作用。猜猜这是微软的逻辑。

答案 1 :(得分:10)

当您从另一个批处理文件中调用一个批处理文件时(并不总是清楚),您应该使用CALL(或call),否则它更像goto并且不会不会回到来电者那里。 ant实际上是批处理文件ant.bat吗?这应该适用:

CALL ant -Dproject.version=1.1.2 release published
相关问题