首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Shell脚本中获取Maven执行的状态

在Shell脚本中获取Maven执行的状态
EN

Stack Overflow用户
提问于 2010-12-06 18:28:06
回答 2查看 2.2K关注 0票数 3

我想知道是否有一种方法可以在Shell脚本(用于构建过程)中“查询”Maven执行的状态。

关键是,我希望在其中一个Shell脚本Maven执行中出现一个错误时,整个构建脚本就会失败。

例如:

代码语言:javascript
运行
复制
(0) mvn -f .../someDir clean
(1) mvn -f .../1/pom.xml install
(2) mvn -f .../2/pom.xml -PgenerateWadl

因此,如果(0)中出现错误,则不能再执行(1)和(2),而是构建脚本应该在(0)之后立即退出并返回错误消息。

我对Shell脚本不是很感兴趣,但我知道$?变量获取上一次执行的返回值。但是,由于Maven似乎只是将错误写出到控制台,这可能不起作用,不是吗?

我本想研究更多关于"$?“的信息,但很难在谷歌上搜索到。

EN

Stack Overflow用户

发布于 2010-12-07 01:01:11

一种简单的方法是使用-e选项。

代码语言:javascript
运行
复制
set -e
mvn -f .../somedir clean
mvn -f .../otherdir install
mvn -f .../thirddir -PgenerateWadl package

如果顺序中的任何命令以非零状态退出(除非它是ifwhile等显式测试的一部分,或者是a || b等链的一部分),这将自动使shell退出并返回错误。

您可以通过在任何Maven调用之间插入对false的调用来观察这种情况的发生。

有关set -e的详细信息,请参阅set POSIX spec

票数 6
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4365418

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档