Запуск ant из командного файла: более поздние команды не запускаются - PullRequest
27 голосов
/ 08 декабря 2010

У меня есть командный файл, который запускает ant, а затем копирует один из созданных файлов:

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

Когда я запускаю командный файл, ant запускается успешно, но оператор копирования никогда не выполняется, хотя он будет работать нормально, если я наберу его и нажму Enter после завершения задачи ant.

Что здесь происходит?

Ответы [ 2 ]

46 голосов
/ 08 декабря 2010

Однажды у меня была такая же проблема, и магия call сделала это.

В этом вашем командном файле попробуйте:

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

Не могу сказать, почему это сработало.Угадай, это логика Microsoft.

10 голосов
/ 08 декабря 2010

Когда вы вызываете один пакетный файл из другого (что не всегда понятно), вы должны использовать CALL (или call), в противном случае он работает больше как goto и не возвращается обратно к вызывающий абонент. ant на самом деле командный файл ant.bat? Это должно работать тогда:

CALL ant -Dproject.version=1.1.2 release published
...