Description
In a multi module project, when building with multiple threads (-T) and/or --fail-at-end, enforcer rule violation messages can be really hard to find.
After BUILD FAILURE you just see e.g.
Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce (enforce-test-deps-scope) on project quarkus-integration-test-jpa: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. -> [Help 1]
You then have to scroll up, past a potentially huge list of SKIPPED reactor modules and messages like the following:
[INFO] ------------------------------------------------------------------------ [INFO] Skipping Quarkus - Integration Tests - Mailer [INFO] This project has been banned from the build due to previous failures. [INFO] ------------------------------------------------------------------------
Then, finally, when reaching the first (from the bottom) potentially relevant module outputs, you have find the part with the actual violation messages which can be even higher up.
This only gets worse when building in parallel.
The idea is to enrich the MojoExecutionException with the actual violation messages, either in general or via a new property/parameter.
Attachments
Issue Links
- is duplicated by
-
MENFORCER-400 DependencyConvergence - poor error message
- Closed
- links to