From f3098c26ce8bd1dc4dcfb96d83a5a859f6ad4e21 Mon Sep 17 00:00:00 2001 From: Charles Honton Date: Mon, 31 May 2021 11:00:16 -0700 Subject: [PATCH] Document that installAtEnd must be set consistently --- .../maven/plugins/install/InstallMojo.java | 13 +++++++++++-- src/site/fml/faq.fml | 17 +++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/apache/maven/plugins/install/InstallMojo.java b/src/main/java/org/apache/maven/plugins/install/InstallMojo.java index 277687f8..38d8b6ef 100644 --- a/src/main/java/org/apache/maven/plugins/install/InstallMojo.java +++ b/src/main/java/org/apache/maven/plugins/install/InstallMojo.java @@ -67,8 +67,17 @@ public class InstallMojo private List reactorProjects; /** - * Whether every project should be installed during its own install-phase or at the end of the multimodule build. If - * set to {@code true} and the build fails, none of the reactor projects is installed. + * Whether every project should be installed during its own install-phase or at the end of the + * multi-module build. If set to {@code true} and the build fails, none of the reactor projects + * is installed. + * + * In order for this flag to work properly, all modules of the multi-module must set this + * property to the same value and all modules must have the same value for the skip property. + * If this property or the skip property are inconsistently set in different projects, any + * project with this property set to true will not be installed either immediately nor at the + * end of the build. See details in + * MINSTALL-115 + * * (experimental) * * @since 2.5 diff --git a/src/site/fml/faq.fml b/src/site/fml/faq.fml index e94afa96..4f72595b 100644 --- a/src/site/fml/faq.fml +++ b/src/site/fml/faq.fml @@ -34,5 +34,22 @@ under the License.

+ + Why isn't installAtEnd property working? + +

+ The installAtEnd property must be set consistently in all modules and the skip + property must be set consistently in all modules. If either property is not consistent, any + module with installAtEnd set to true will not be installed. +

+

+ An alternative to using installAtEnd is to have the build script invoke Maven twice: +

+ mvn verify
+ mvn install:install
+
+

+
+