Skip to content

Commit 1e6c8fe

Browse files
authored
Addendum to set-version (#194)
Make it an aggregator.
1 parent 17cce8f commit 1e6c8fe

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

toolbox/src/main/java/eu/maveniverse/maven/toolbox/plugin/mp/SetVersionMojo.java

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,15 @@
1414
import eu.maveniverse.maven.toolbox.shared.internal.jdom.JDomPomTransformer;
1515
import java.util.ArrayList;
1616
import java.util.function.Consumer;
17+
import org.apache.maven.plugin.MojoExecutionException;
1718
import org.apache.maven.plugins.annotations.Mojo;
1819
import org.apache.maven.plugins.annotations.Parameter;
20+
import org.apache.maven.project.MavenProject;
1921

2022
/**
2123
* Sets version of current project and all children.
2224
*/
23-
@Mojo(name = "set-version", threadSafe = true)
25+
@Mojo(name = "set-version", aggregator = true, threadSafe = true)
2426
public class SetVersionMojo extends MPMojoSupport {
2527
/**
2628
* The new version.
@@ -37,7 +39,6 @@ public class SetVersionMojo extends MPMojoSupport {
3739
@Override
3840
protected Result<Boolean> doExecute() throws Exception {
3941
ToolboxCommando toolboxCommando = getToolboxCommando();
40-
Result<Boolean> result;
4142

4243
ArrayList<Consumer<JDomPomTransformer.TransformationContext>> transformers = new ArrayList<>();
4344
transformers.add(c -> JDomPomEditor.setVersion(c.getDocument().getRootElement(), version));
@@ -50,9 +51,15 @@ protected Result<Boolean> doExecute() throws Exception {
5051
}
5152
}
5253

53-
try (ToolboxCommando.EditSession editSession =
54-
toolboxCommando.createEditSession(mavenProject.getFile().toPath())) {
55-
result = toolboxCommando.doEdit(editSession, transformers);
54+
Result<Boolean> result = Result.success(true);
55+
for (MavenProject project : mavenSession.getProjects()) {
56+
try (ToolboxCommando.EditSession editSession =
57+
toolboxCommando.createEditSession(project.getFile().toPath())) {
58+
result = toolboxCommando.doEdit(editSession, transformers);
59+
}
60+
if (!result.isSuccess()) {
61+
throw new MojoExecutionException("Failed to update version of " + project.getArtifactId());
62+
}
5663
}
5764
return result;
5865
}

0 commit comments

Comments
 (0)