Thinking out loud... would it make more sense to name those phases
"before:each" and "after:each" - following the vocabulary that e.g.
JUnit uses?
- Maarten
On 18/03/2025 12:24, Guillaume Nodet wrote:
The `all` phase is executed for each project. But you can avoid the plugin
execution to be inherited by setting inherited="false" on the execution.
I've spotted a bug I think, as the definition of this phase does not
reference child projects, so they may not be executed at the correct time.
Could you raise a JIRA and provide a reproducer ?
Le lun. 17 mars 2025 à 21:13, Karl Heinz Marbaise <khmarba...@gmx.de.invalid>
a écrit :
Hi,
I'm trying to build a project with a number of subprojects..
I'm binding a plugin (just echoing) like this to new life cylce phases:
like this:
<plugin>
<groupId>com.soebes.maven.plugins</groupId>
<artifactId>echo-maven-plugin</artifactId>
<executions>
<execution>
<id>before-ready</id>
<phase>before:ready</phase>
<goals>
<goal>echo</goal>
</goals>
<configuration>
<echos>
<echo>Hallo 'before:ready' phase.</echo>
</echos>
</configuration>
</execution>
<execution>
<id>before-all</id>
<phase>before:all</phase>
<goals>
<goal>echo</goal>
</goals>
<configuration>
<echos>
<echo>Hallo 'before:all' phase.</echo>
</echos>
</configuration>
</execution>
<execution>
<id>all</id>
<phase>all</phase>
<goals>
<goal>echo</goal>
</goals>
<configuration>
<echos>
<echo>Hallo 'all' phase.</echo>
</echos>
</configuration>
</execution>
<execution>
<id>after-all</id>
<phase>after:all</phase>
<goals>
<goal>echo</goal>
</goals>
<configuration>
<echos>
<echo>Hallo 'after:all' phase.</echo>
</echos>
</configuration>
</execution>
What I can observe while calling maven like this:
mvn -B -b concurrent verify
What I can observe that for each module the phase:
[INFO] --- echo:0.5.0:echo (before-all) @ appasm ---
[INFO] Hallo 'before:all' phase.
[INFO]
[INFO] --- echo:0.5.0:echo (before-all) @ assembly ---
[INFO] Hallo 'before:all' phase.
[INFO]
[INFO] --- echo:0.5.0:echo (before-all) @ shade ---
[INFO] Hallo 'before:all' phase.
[INFO]
[INFO] --- echo:0.5.0:echo (before-all) @ app ---
[INFO] Hallo 'before:all' phase.
[INFO]
[INFO] --- echo:0.5.0:echo (before-all) @ service ---
[INFO] Hallo 'before:all' phase.
[INFO]
[INFO] --- echo:0.5.0:echo (before-all) @ webgui ---
[INFO] Hallo 'before:all' phase.
[INFO]
[INFO] --- echo:0.5.0:echo (before-all) @ service-client ---
[INFO] Hallo 'before:all' phase.
....
is being called..also
"after:all" the same way..
Based on my assumption (coming from the name) would be called exactly
once "before:all" ... "after:all" also......
Because that would not solve the problem to bind a plugin like JaCoCo
(for coverage for an aggregate) or JavaDoc for an aggregate for a whole
project in it...
Or do we have a solution for that which I'm not yet aware of?
Kind regards
Karl Heinz Marbaise
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org