使用maven发布项目的批处理脚本

时间:2013-04-03 05:25:16

标签: maven batch-file

我希望编写一个批处理脚本来自动化项目发布。以下命令将包含在脚本中。但是,脚本应检查先前的命令是否已成功完成,然后继续执行下一个命令。

1.svn co https://projectbase/svn/projectname/trunk
2.mvn clean install
3.mvn release:prepare
4.mvn release:perform

我知道我应该使用调用mvn命令,但是,如何编写批处理脚本来检查一个命令是否成功完成,然后继续执行批处理脚本中的下一个命令?

1 个答案:

答案 0 :(得分:1)

试试这个 - 如果maven产生错误,它依赖于[ERROR]条目:

@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%M in ('mvn clean install') do (
    endlocal
    echo %%M
    echo %%M | find "[ERROR]" 2>&1 > null && echo --Error durring maven execution-- && goto :endfor


)
endlocal

setlocal enabledelayedexpansion
for /f "delims=" %%M in ('mvn next command') do (
    endlocal
    echo %%M
    echo %%M | find "[ERROR]" 2>&1 > null && echo --Error durring maven execution-- && goto :endfor


)
endlocal


goto :skipendfor

:endfor

rem put here code you want to execute if maven fails
goto :eof

:skipendfor
rem put here code you want to execute if maven succeed
goto :eof