This is an automated email from the ASF dual-hosted git repository. ptahchiev pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven-archetype.git
The following commit(s) were added to refs/heads/master by this push: new d385707 ARCHETYPE-530 Pass the settings.xml file to the ArchetypeCreationRequest. d385707 is described below commit d385707bf67cc9b82f0ba1070a3b5c1131f4b6cb Author: petar.tahchiev <paranoia...@gmail.com> AuthorDate: Fri May 25 12:52:13 2018 +0300 ARCHETYPE-530 Pass the settings.xml file to the ArchetypeCreationRequest. If the user has specified settings.xml file on the command-line we need to pass it to the ArchetypeCreationRequest and further down the InvocationRequest. Otherwise postPhase like deploy will not work with custom settings.xml See ARCHETYPE-530 --- .../apache/maven/archetype/ArchetypeCreationRequest.java | 14 ++++++++++++++ .../maven/archetype/creator/FilesetArchetypeCreator.java | 1 + .../archetype/mojos/CreateArchetypeFromProjectMojo.java | 5 ++++- 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/archetype-common/src/main/java/org/apache/maven/archetype/ArchetypeCreationRequest.java b/archetype-common/src/main/java/org/apache/maven/archetype/ArchetypeCreationRequest.java index c5cc23a..ae88355 100644 --- a/archetype-common/src/main/java/org/apache/maven/archetype/ArchetypeCreationRequest.java +++ b/archetype-common/src/main/java/org/apache/maven/archetype/ArchetypeCreationRequest.java @@ -59,6 +59,8 @@ public class ArchetypeCreationRequest private File outputDirectory; + private File settingsFile; + public String getPostPhase() { return postPhase; @@ -226,4 +228,16 @@ public class ArchetypeCreationRequest return this; } + + public File getSettingsFile() + { + return settingsFile; + } + + public ArchetypeCreationRequest setSettingsFile( File settingsFile ) + { + this.settingsFile = settingsFile; + + return this; + } } diff --git a/archetype-common/src/main/java/org/apache/maven/archetype/creator/FilesetArchetypeCreator.java b/archetype-common/src/main/java/org/apache/maven/archetype/creator/FilesetArchetypeCreator.java index f884cb4..7a87419 100644 --- a/archetype-common/src/main/java/org/apache/maven/archetype/creator/FilesetArchetypeCreator.java +++ b/archetype-common/src/main/java/org/apache/maven/archetype/creator/FilesetArchetypeCreator.java @@ -280,6 +280,7 @@ public class FilesetArchetypeCreator } InvocationRequest internalRequest = new DefaultInvocationRequest(); internalRequest.setPomFile( archetypePomFile ); + internalRequest.setUserSettingsFile( request.getSettingsFile() ); internalRequest.setGoals( Collections.singletonList( request.getPostPhase() ) ); if ( request.getLocalRepository() != null ) { diff --git a/maven-archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java b/maven-archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java index 97c7740..e3e6cf0 100644 --- a/maven-archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java +++ b/maven-archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java @@ -225,6 +225,9 @@ public class CreateArchetypeFromProjectMojo @Parameter( defaultValue = "${session}", readonly = true, required = true ) private MavenSession session; +// @Parameter( defaultValue = "${session.settings}", readonly = true, required = true ) +// private File settingsXml; + public void execute() throws MojoExecutionException, MojoFailureException { @@ -252,7 +255,7 @@ public class CreateArchetypeFromProjectMojo keepParent ).setPartialArchetype( partialArchetype ) .setLocalRepository( localRepository ).setProjectBuildingRequest( session.getProjectBuildingRequest() ) /* this should be resolved and asked for user to verify */.setPackageName( packageName ).setPostPhase( - archetypePostPhase ).setOutputDirectory( outputDirectory ); + archetypePostPhase ).setOutputDirectory( outputDirectory ).setSettingsFile( session.getRequest().getUserSettingsFile() ); ArchetypeCreationResult result = manager.createArchetypeFromProject( request ); -- To stop receiving notification emails like this one, please contact ptahch...@apache.org.