Java 在maven插件中,如果模块构建失败,我能知道吗?

Java 在maven插件中,如果模块构建失败,我能知道吗?,java,maven,maven-plugin,slf4j,logback,Java,Maven,Maven Plugin,Slf4j,Logback,我正在考虑开发一个maven插件,如果构建失败,它将导致您的maven构建输出信息消息及以上信息 上下文是我想要配置maven在默认情况下使用warn并禁用我公司的所有日志(这将通过logback配置完成)我希望有一个插件,它可以与另一个内存中的logback appender进行对话,以便在构建失败时将整个日志提交给用户,因为此时所有数据都是相关的 我的问题是,如果以及如何获得构建失败的“通知” 对于那些感兴趣的人,我的意图(我仍然需要验证)是以编程方式将ConsolePender更改回inf

我正在考虑开发一个maven插件,如果构建失败,它将导致您的maven构建输出信息消息及以上信息

上下文是我想要配置maven在默认情况下使用warn并禁用我公司的所有日志(这将通过logback配置完成)我希望有一个插件,它可以与另一个内存中的logback appender进行对话,以便在构建失败时将整个日志提交给用户,因为此时所有数据都是相关的

我的问题是,如果以及如何获得构建失败的“通知”

对于那些感兴趣的人,我的意图(我仍然需要验证)是以编程方式将ConsolePender更改回info,并将积累的所有内容写入其中

有人问我的动机,所以有两个。
首先,我认为(仍在分析数据,看我是否正确)我们的构建日志过于冗长,影响了我们的构建时间。

第二个问题是,我们的一些测试导致异常作为异常的一部分被抛出,这会混淆日志。我仍然希望完整的日志以防构建失败,这样开发人员就可以获得调试失败所需的所有信息。首先,我不明白您为什么不使用连续集成解决方案来记录整个输出并可以存储一段时间。如果你需要分析,你可以看看。除此之外,我不明白你需要做你所描述的事情,还有什么好处

此外,maven插件根本不符合您的意图,因为maven插件绑定到生命周期


如果您真的需要mave生命周期之外的东西,您可以查看可以按照您描述的方式使用的,但它是一个扩展,必须放在maven安装的
lib/ext
文件夹中。最好是将作为父级用于您自己的实现。

问题是,为什么您需要如此复杂的解决方案,exect的意图是什么,或者您在构建中不能分析什么?顺便问一下:你使用哪种maven版本?您的构建运行得如何?手动?@khmarbaise感谢您的回复。我有两个动机。首先,我认为(仍在分析数据以确定我是否正确)我们的构建日志过于冗长,影响了我们的构建时间。第二个问题是,我们的一些测试导致异常作为异常的一部分被抛出,这会混淆日志。我仍然希望完整的日志以防构建失败,这样开发人员就可以获得调试失败所需的所有信息。如果构建日志过于冗长,那么它们将变得无用。如果你的日志影响了你的构建时间(我对此表示怀疑),那么你应该弄清楚到底是什么影响了你的构建时间。此外,如果测试在控制台上打印异常等,则必须修复测试。当然,您可以将输出重定向到日志文件中。我在一个大的建筑里也有同样的。我的输出是ca.100 MiB,这是由于在控制台调试输出等上打印所有内容造成的。同时,这已被修复并减少到2 MiB,可以很好地处理。