Как выполнить несколько пакетных команд в последовательности - PullRequest
22 голосов
/ 12 января 2011

Я хочу создать пакетный сценарий Windows XP, который последовательно выполняет что-то вроде следующего:

@echo off
:: build everything
cd \workspace\project1
mvn clean install
cd ..\project2
mvn clean install

:: run some java file
cd \workspace\project3
java -jar somefile.jar

Когда я создаю пакетный сценарий, подобный этому (следуя этим инструкциям), явсе еще есть проблема, что скрипт перестает делать что-то после первого

mvn clean install

и затем отображает командную строку.Как я могу выполнить все эти команды последовательно в одном пакетном файле?

Я не хочу ссылаться на другие файлы , я хочу сделать это в одном файле.

Ответы [ 2 ]

31 голосов
/ 12 января 2011

Думаю, ваша проблема в том, что когда вы вызываете команду mvn, вы никогда больше не возвращаетесь к своему сценарию.

Попробуйте использовать команду call, например ::100100

call mvn clean install

Это вызовет команду mvn clean install, а затем вернется к вашему сценарию.

Когда вы просто вызываете mvn без call, вы фактически запускаете файл mvn.bat и передаете ему управление.

5 голосов
/ 12 января 2011

Вам нужно будет использовать команду call на mvn (что похоже на другой пакетный файл?)

Как это:

@echo off
:: build everything
cd \workspace\project1
call mvn clean install
cd ..\project2
call mvn clean install

:: run some java file
cd \workspace\project3
java -jar somefile.jar

Источник: Google - твой друг.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...