Maven(MVN)失败时返回值是什么?

6
当我们从批处理脚本 (*.cmd) 运行 mvn clean install 时,无论构建成功还是失败,%ERRORLEVEL% 始终为0。如何让 Maven 在出现错误时返回非零代码?
mvn clean install   
echo error:%ERRORLEVEL%

我们正在使用Maven 2。
更新:
请注意,如果我们执行“mvn blah”,那么由于错误的目标,失败后ERRORLEVEL=1。
但是,如果我们执行“mvn clean install”,构建由于编译错误而失败,我们仍然得到ERRORLEVEL=0。
更新2:
好的,这是因为我们像这样运行Maven:
mvn clean install | tee %LOGFILE%
我想是tee设置了ERRORLEVEL。

1
mvn是一个批处理文件,你尝试过使用“call mvn clean install”命令并输出ERRORLEVEL吗? - khmarbaise
1
你使用的Maven 2确切版本是什么? Maven 2存在一个错误,它不能返回正确的错误代码:http://jira.codehaus.org/browse/MNG-3651。该错误已在Maven 2.1中修复。如果您正在使用早期版本,则可以将修复手动应用于您的本地bat文件。 - DB5
我们正在使用Apache Maven 2.2.1(r801777; 2009-08-06 15:16:01-0400) - Marcus Leon
1个回答

3

好的,这是因为我们正在运行类似于以下命令的Maven:

mvn clean install | tee %LOGFILE%

我猜测是tee设置了ERRORLEVEL。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接