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 > > -- ------------------------ Guillaume Nodet