从 shell 脚本执行 Maven 任务并获取错误代码



我正在从bash脚本执行Maven部署任务,但是即使Maven任务失败,脚本也会继续并完成而不会出错。

我尝试过 -e 标志,但这会导致部署失败。我还尝试了以下(伪代码)

result_code= mvn deploy
if [$result_code -gt 0];then
exit 1

如何确定部署是否成功的任何建议?

result_code=mvn deploy不是

获取返回状态的方法

您可以尝试例如:

#!/bin/bash
mvn deploy
STATUS=$?
if [ $STATUS -eq 0 ]; then
echo "Deployment Successful"
else
echo "Deployment Failed"
fi

此外,如果有人使用Windows 10,这是我使用的示例:

mvn deploy
if not %ERROR_CODE%==0 goto error
echo SUCCESS
goto end
:error
echo FAILED
:end
一个人

的 mvn 任务尽管失败,但可能返回 0 的另一个可能原因:小心将 Maven 的输出管道到其他程序。例如,我正在使用grcatgrc构建在它之上),它将始终返回退出代码 0;

mvn compile | grcat ~/conf.mvn

我不确定如何保留输出的漂亮颜色编码。那里有color_maven.sh,但还有其他问题。

相关内容

  • 没有找到相关文章

最新更新