From 074b774b7afaaf452a032301cdaed269b5d53228 Mon Sep 17 00:00:00 2001 From: Charles Honton Date: Mon, 31 May 2021 11:26:04 -0700 Subject: [PATCH] Document that deployAtEnd property must be set consistently in reactor --- .../maven/plugins/deploy/DeployMojo.java | 13 +++++++++-- src/site/fml/faq.fml | 22 +++++++++++++++++++ 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/apache/maven/plugins/deploy/DeployMojo.java b/src/main/java/org/apache/maven/plugins/deploy/DeployMojo.java index ae26134b..71f056c6 100644 --- a/src/main/java/org/apache/maven/plugins/deploy/DeployMojo.java +++ b/src/main/java/org/apache/maven/plugins/deploy/DeployMojo.java @@ -73,8 +73,17 @@ public class DeployMojo private List reactorProjects; /** - * Whether every project should be deployed during its own deploy-phase or at the end of the multimodule build. If - * set to {@code true} and the build fails, none of the reactor projects is deployed. + * Whether every project should be deployed during its own deploy-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 deployed. + * + * In order for this flag to work properly, all modules of the multi-module build 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 deployed either immediately nor at the + * end of the build. See details in + * MDEPLOY-226 + * * (experimental) * * @since 2.8 diff --git a/src/site/fml/faq.fml b/src/site/fml/faq.fml index 532cb5a9..fc59f33c 100644 --- a/src/site/fml/faq.fml +++ b/src/site/fml/faq.fml @@ -77,6 +77,28 @@ under the License. ]]> + + Why isn't deployAtEnd property working? + +

+ The deployAtEnd 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 deployAtEnd set to true will not be deployed. +

+

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

+ mvn install
+ mvn deploy:deploy
+
+ If you need to both installAtEnd and deployAtEnd, use the something like the following: +
+ mvn verify
+ mvn install:install deploy:deploy
+
+

+
+
What does the message "The packaging for this project did not assign a file to the build artifact" mean when I run deploy:deploy?