You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by pt...@apache.org on 2016/08/15 08:26:59 UTC
[2/6] maven-archetype git commit: Add new testing module final.
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripWithProxyTest.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripWithProxyTest.java b/archetype-testing/archetype-final/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripWithProxyTest.java
new file mode 100644
index 0000000..a58b828
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripWithProxyTest.java
@@ -0,0 +1,246 @@
+package org.apache.maven.archetype.test;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.commons.io.IOUtils;
+import org.apache.maven.archetype.ArchetypeCreationRequest;
+import org.apache.maven.archetype.ArchetypeCreationResult;
+import org.apache.maven.archetype.ArchetypeGenerationRequest;
+import org.apache.maven.archetype.ArchetypeGenerationResult;
+import org.apache.maven.archetype.ArchetypeManager;
+import org.apache.maven.archetype.catalog.Archetype;
+import org.apache.maven.archetype.catalog.ArchetypeCatalog;
+import org.apache.maven.archetype.catalog.io.xpp3.ArchetypeCatalogXpp3Writer;
+import org.apache.maven.archetype.common.ArchetypeRegistryManager;
+import org.apache.maven.artifact.manager.WagonManager;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.model.Model;
+import org.apache.maven.project.DefaultProjectBuilderConfiguration;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.MavenProjectBuilder;
+import org.apache.maven.project.interpolation.ModelInterpolator;
+import org.codehaus.plexus.PlexusTestCase;
+import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.StringUtils;
+import org.mortbay.jetty.Server;
+import org.mortbay.jetty.webapp.WebAppContext;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.FileWriter;
+import java.io.OutputStream;
+import java.io.Writer;
+import java.util.Properties;
+
+/**
+ * @author Jason van Zyl
+ */
+public class ArchetyperRoundtripWithProxyTest
+ extends PlexusTestCase
+{
+ Server proxyServer;
+
+ int proxyPort;
+
+ Server server;
+
+ int port;
+
+ public void testArchetyper()
+ throws Exception
+ {
+ ArchetypeManager archetype = (ArchetypeManager) lookup( ArchetypeManager.ROLE );
+
+ ArchetypeRegistryManager registryManager = (ArchetypeRegistryManager) lookup( ArchetypeRegistryManager.ROLE );
+
+ MavenProjectBuilder projectBuilder = (MavenProjectBuilder) lookup( MavenProjectBuilder.ROLE );
+
+ ArtifactRepository localRepository = registryManager.createRepository( new File( getBasedir(),
+ "target" + File.separator
+ + "test-classes"
+ + File.separator
+ + "repositories"
+ + File.separator
+ + "local" ).toURI().toURL().toExternalForm(),
+ "local-repo" );
+ ArtifactRepository centralRepository = registryManager.createRepository( new File( getBasedir(),
+ "target" + File.separator
+ + "test-classes"
+ + File.separator
+ + "repositories"
+ + File.separator
+ + "central" ).toURI().toURL().toExternalForm(),
+ "central-repo" );
+
+ // (1) create a project from scratch
+ // (2) create an archetype from the project
+ // (3) create our own archetype catalog properties in memory
+ // (4) create our own archetype catalog describing the archetype we just created
+ // (5) deploy the archetype we just created
+ // (6) create a project form the archetype we just created
+ // ------------------------------------------------------------------------
+ //
+ // ------------------------------------------------------------------------
+ // (1) create a project from scratch
+// File sourceProject = new File( getBasedir( ), "target/test-classes/projects/roundtrip-1-project" );
+
+ File workingProject = new File( getBasedir(),
+ "target" + File.separator + "test-classes" + File.separator + "projects"
+ + File.separator + "roundtrip-2-project" );
+ FileUtils.forceDelete( new File( workingProject, "target" ) );
+
+ // (2) create an archetype from the project
+ File pom = new File( workingProject, "pom.xml" );
+
+ MavenProject project = projectBuilder.build( pom, localRepository, null );
+
+ ArchetypeCreationRequest acr = new ArchetypeCreationRequest().setProject( project ).
+ setLocalRepository( localRepository ).setPostPhase( "package" );
+
+ ArchetypeCreationResult creationResult = archetype.createArchetypeFromProject( acr );
+
+ if ( creationResult.getCause() != null )
+ {
+ throw creationResult.getCause();
+ }
+
+ // (3) create our own archetype catalog properties in memory
+ File catalogDirectory = new File( getBasedir(), "target" + File.separator + "catalog" );
+
+ File catalogFile = new File( catalogDirectory, "archetype-catalog.xml" );
+
+ File catalogProperties = new File( catalogDirectory, "archetype-catalog.properties" );
+
+ catalogDirectory.mkdirs();
+
+ Properties p = new Properties();
+ p.setProperty( "sources", "catalog" );
+ p.setProperty( "catalog.file", catalogFile.getAbsolutePath() );
+ OutputStream os = new FileOutputStream( catalogProperties );
+ p.store( os, "Generated catalog properties" );
+
+ // (5) install the archetype we just created
+ File generatedArchetypeDirectory = new File( project.getBasedir(),
+ "target" + File.separator + "generated-sources" + File.separator
+ + "archetype" );
+ File generatedArchetypePom = new File( generatedArchetypeDirectory, "pom.xml" );
+ MavenProject generatedArchetypeProject = projectBuilder.build( generatedArchetypePom, localRepository, null );
+ ModelInterpolator modelInterpolator = (ModelInterpolator)lookup( ModelInterpolator.ROLE );
+ Model generatedArchetypeModel = modelInterpolator.interpolate( generatedArchetypeProject.getModel(), generatedArchetypePom.getParentFile(), new DefaultProjectBuilderConfiguration(), true );
+
+ File archetypeDirectory =
+ new File( generatedArchetypeDirectory, "src" + File.separator + "main" + File.separator + "resources" );
+
+ File archetypeArchive = archetype.archiveArchetype( archetypeDirectory, new File(
+ generatedArchetypeModel.getBuild().getDirectory() ),
+ generatedArchetypeModel.getBuild().getFinalName() );
+
+ String baseName =
+ StringUtils.replace( generatedArchetypeProject.getGroupId(), ".", File.separator ) + File.separator
+ + generatedArchetypeProject.getArtifactId() + File.separator + generatedArchetypeProject.getVersion()
+ + File.separator + generatedArchetypeModel.getBuild().getFinalName();
+ File archetypeInRepository = new File( centralRepository.getBasedir(), baseName + ".jar" );
+ File archetypePomInRepository = new File( centralRepository.getBasedir(), baseName + ".pom" );
+ archetypeInRepository.getParentFile().mkdirs();
+ FileUtils.copyFile( archetypeArchive, archetypeInRepository );
+ FileUtils.copyFile( generatedArchetypePom, archetypePomInRepository );
+
+ // (4) create our own archetype catalog describing the archetype we just created
+ ArchetypeCatalog catalog = new ArchetypeCatalog();
+ Archetype generatedArchetype = new Archetype();
+ generatedArchetype.setGroupId( generatedArchetypeProject.getGroupId() );
+ generatedArchetype.setArtifactId( generatedArchetypeProject.getArtifactId() );
+ generatedArchetype.setVersion( generatedArchetypeProject.getVersion() );
+ generatedArchetype.setRepository( "http://localhost:" + port + "/repo" );
+ catalog.addArchetype( generatedArchetype );
+
+ ArchetypeCatalogXpp3Writer catalogWriter = new ArchetypeCatalogXpp3Writer();
+ Writer writer = new FileWriter( catalogFile );
+ catalogWriter.write( writer, catalog );
+ IOUtils.closeQuietly( writer );
+
+ // (6) create a project form the archetype we just created
+ String outputDirectory = new File( getBasedir(),
+ "target" + File.separator + "test-classes" + File.separator + "projects"
+ + File.separator + "roundtrip-2-recreatedproject" ).getAbsolutePath();
+ FileUtils.forceDelete( outputDirectory );
+
+ WagonManager manager = (WagonManager) lookup( WagonManager.class.getName() );
+ manager.addProxy( "http", "localhost", proxyPort, null, null, null );
+
+ ArchetypeGenerationRequest agr =
+ new ArchetypeGenerationRequest().setArchetypeGroupId( generatedArchetypeProject.getGroupId() ).
+ setArchetypeArtifactId( generatedArchetypeProject.getArtifactId() ).
+ setArchetypeVersion( generatedArchetypeProject.getVersion() ).
+ setGroupId( "com.mycompany" ).setArtifactId( "myapp" ).setVersion( "1.0-SNAPSHOT" ).
+ setPackage( "com.mycompany.myapp" ).setOutputDirectory( outputDirectory ).
+ setLocalRepository( localRepository ).setArchetypeRepository( "http://localhost:" + port + "/repo" );
+ ArchetypeGenerationResult generationResult = archetype.generateProjectFromArchetype( agr );
+
+ if ( generationResult.getCause() != null )
+ {
+ throw generationResult.getCause();
+ }
+
+ }
+
+ public void setUp()
+ throws Exception
+ {
+ super.setUp();
+ // Start Proxy Jetty
+
+ System.setProperty( "org.apache.maven.archetype.repository.directory",
+ getTestPath( "target/test-classes/repositories/central" ) );
+
+ proxyServer = new Server( 0 );
+
+ WebAppContext webappProxy = new WebAppContext();
+ webappProxy.setContextPath( "/" );
+ webappProxy.setWar( "target/wars/archetype-proxy.war" );
+ proxyServer.setHandler( webappProxy );
+
+ proxyServer.start();
+
+ proxyPort = proxyServer.getConnectors()[0].getLocalPort();
+
+ server = new Server( 0 );
+
+ WebAppContext webapp = new WebAppContext();
+ webapp.setContextPath( "/repo" );
+ webapp.setWar( "target/wars/archetype-repository.war" );
+ server.setHandler( webapp );
+
+ server.start();
+
+ port = server.getConnectors()[0].getLocalPort();
+
+ }
+
+ public void tearDown()
+ throws Exception
+ {
+ super.tearDown();
+ // Stop Jettys
+
+ proxyServer.stop();
+ server.stop();
+ }
+}
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/java/org/apache/maven/archetype/test/RoundtripMultiModuleTest.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/java/org/apache/maven/archetype/test/RoundtripMultiModuleTest.java b/archetype-testing/archetype-final/src/test/java/org/apache/maven/archetype/test/RoundtripMultiModuleTest.java
new file mode 100644
index 0000000..fd66d35
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/java/org/apache/maven/archetype/test/RoundtripMultiModuleTest.java
@@ -0,0 +1,317 @@
+package org.apache.maven.archetype.test;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.commons.io.IOUtils;
+import org.apache.maven.archetype.ArchetypeCreationRequest;
+import org.apache.maven.archetype.ArchetypeCreationResult;
+import org.apache.maven.archetype.ArchetypeGenerationRequest;
+import org.apache.maven.archetype.ArchetypeGenerationResult;
+import org.apache.maven.archetype.ArchetypeManager;
+import org.apache.maven.archetype.catalog.Archetype;
+import org.apache.maven.archetype.catalog.ArchetypeCatalog;
+import org.apache.maven.archetype.catalog.io.xpp3.ArchetypeCatalogXpp3Writer;
+import org.apache.maven.archetype.common.ArchetypeRegistryManager;
+import org.apache.maven.archetype.common.Constants;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.model.Model;
+import org.apache.maven.project.DefaultProjectBuilderConfiguration;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.MavenProjectBuilder;
+import org.apache.maven.project.interpolation.ModelInterpolator;
+import org.codehaus.plexus.PlexusTestCase;
+import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.StringUtils;
+import org.mortbay.jetty.Server;
+import org.mortbay.jetty.webapp.WebAppContext;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.FileWriter;
+import java.io.OutputStream;
+import java.io.Writer;
+import java.util.Iterator;
+import java.util.Properties;
+
+/**
+ * @author Jason van Zyl
+ */
+public class RoundtripMultiModuleTest
+ extends PlexusTestCase
+{
+ public void testArchetyper()
+ throws Exception
+ {
+
+ ArchetypeManager archetype = (ArchetypeManager) lookup( ArchetypeManager.ROLE );
+
+ ArchetypeRegistryManager registryManager = (ArchetypeRegistryManager) lookup( ArchetypeRegistryManager.ROLE );
+
+ MavenProjectBuilder projectBuilder = (MavenProjectBuilder) lookup( MavenProjectBuilder.ROLE );
+
+ ArtifactRepository localRepository = registryManager.createRepository( new File( getBasedir(),
+ "target" + File.separator
+ + "test-classes"
+ + File.separator
+ + "repositories"
+ + File.separator
+ + "local" ).toURI().toURL().toExternalForm(),
+ "local-repo" );
+
+ ArtifactRepository centralRepository = registryManager.createRepository( new File( getBasedir(),
+ "target" + File.separator
+ + "test-classes"
+ + File.separator
+ + "repositories"
+ + File.separator
+ + "central" ).toURI().toURL().toExternalForm(),
+ "central-repo" );
+
+ // (1) create a project from scratch
+ // (2) create an archetype from the project
+ // (3) create our own archetype catalog properties in memory
+ // (4) create our own archetype catalog describing the archetype we just created
+ // (5) deploy the archetype we just created
+ // (6) create a project form the archetype we just created
+ // ------------------------------------------------------------------------
+ //
+ // ------------------------------------------------------------------------
+ // (1) create a project from scratch
+// File sourceProject = new File( getBasedir( ), "target/test-classes/projects/roundtrip-1-project" );
+
+ File workingProject = new File( getBasedir(),
+ "target" + File.separator + "test-classes" + File.separator + "projects"
+ + File.separator + "roundtrip-multi" );
+ FileUtils.forceDelete( new File( workingProject, "target" ) );
+
+ // (2) create an archetype from the project
+ File pom = new File( workingProject, "pom.xml" );
+
+ MavenProject project = projectBuilder.build( pom, localRepository, null );
+
+ ModelInterpolator modelInterpolator = (ModelInterpolator)lookup( ModelInterpolator.ROLE );
+
+ ArchetypeCreationRequest acr =
+ new ArchetypeCreationRequest().setProject( project ).setLocalRepository( localRepository ).setFiltereds(
+ Constants.DEFAULT_FILTERED_EXTENSIONS ).setLanguages( Constants.DEFAULT_LANGUAGES ).setPostPhase(
+ "package" );
+
+ ArchetypeCreationResult creationResult = archetype.createArchetypeFromProject( acr );
+
+ if ( creationResult.getCause() != null )
+ {
+ throw creationResult.getCause();
+ }
+ else
+ {
+ assertArchetypeCreated( workingProject );
+ }
+
+ // (3) create our own archetype catalog properties in memory
+ File catalogDirectory = new File( getBasedir(), "target" + File.separator + "catalog" );
+
+ File catalogFile = new File( catalogDirectory, "archetype-catalog.xml" );
+
+ File catalogProperties = new File( catalogDirectory, "archetype-catalog.properties" );
+
+ catalogDirectory.mkdirs();
+
+ Properties p = new Properties();
+ p.setProperty( "sources", "catalog" );
+ p.setProperty( "catalog.file", catalogFile.getAbsolutePath() );
+ OutputStream os = new FileOutputStream( catalogProperties );
+ p.store( os, "Generated catalog properties" );
+
+ // (5) install the archetype we just created
+ File generatedArchetypeDirectory = new File( project.getBasedir(),
+ "target" + File.separator + "generated-sources" + File.separator
+ + "archetype" );
+ File generatedArchetypePom = new File( generatedArchetypeDirectory, "pom.xml" );
+ MavenProject generatedArchetypeProject = projectBuilder.build( generatedArchetypePom, localRepository, null );
+ Model generatedModel = modelInterpolator.interpolate( generatedArchetypeProject.getModel(), generatedArchetypePom.getParentFile(), new DefaultProjectBuilderConfiguration(), true );
+
+ File archetypeDirectory =
+ new File( generatedArchetypeDirectory, "src" + File.separator + "main" + File.separator + "resources" );
+
+ File archetypeArchive = archetype.archiveArchetype( archetypeDirectory,
+ new File( generatedModel.getBuild().getDirectory() ),
+ generatedModel.getBuild().getFinalName() );
+
+ String baseName =
+ StringUtils.replace( generatedArchetypeProject.getGroupId(), ".", File.separator ) + File.separator
+ + generatedArchetypeProject.getArtifactId() + File.separator + generatedArchetypeProject.getVersion()
+ + File.separator + generatedModel.getBuild().getFinalName();
+ File archetypeInRepository = new File( centralRepository.getBasedir(), baseName + ".jar" );
+ File archetypePomInRepository = new File( centralRepository.getBasedir(), baseName + ".pom" );
+ archetypeInRepository.getParentFile().mkdirs();
+ FileUtils.copyFile( archetypeArchive, archetypeInRepository );
+ FileUtils.copyFile( generatedArchetypePom, archetypePomInRepository );
+
+ // (4) create our own archetype catalog describing the archetype we just created
+ ArchetypeCatalog catalog = new ArchetypeCatalog();
+ Archetype generatedArchetype = new Archetype();
+ generatedArchetype.setGroupId( generatedArchetypeProject.getGroupId() );
+ generatedArchetype.setArtifactId( generatedArchetypeProject.getArtifactId() );
+ generatedArchetype.setVersion( generatedArchetypeProject.getVersion() );
+ generatedArchetype.setRepository( "http://localhost:" + port + "/repo" );
+ catalog.addArchetype( generatedArchetype );
+
+ ArchetypeCatalogXpp3Writer catalogWriter = new ArchetypeCatalogXpp3Writer();
+ Writer writer = new FileWriter( catalogFile );
+ catalogWriter.write( writer, catalog );
+ IOUtils.closeQuietly( writer );
+
+ // (6) create a project form the archetype we just created
+ String outputDirectory = new File( getBasedir(),
+ "target" + File.separator + "test-classes" + File.separator + "projects"
+ + File.separator + "roundtrip-multi-recreated" ).getAbsolutePath();
+ FileUtils.forceDelete( outputDirectory );
+
+ ArchetypeGenerationRequest agr = new ArchetypeGenerationRequest().setArchetypeGroupId(
+ generatedArchetypeProject.getGroupId() ).setArchetypeArtifactId(
+ generatedArchetypeProject.getArtifactId() ).setArchetypeVersion(
+ generatedArchetypeProject.getVersion() ).setGroupId( "com.mycompany" ).setArtifactId( "myapp" ).setVersion(
+ "1.0-SNAPSHOT" ).setPackage( "com.mycompany.myapp" ).setOutputDirectory(
+ outputDirectory ).setLocalRepository( localRepository ).setArchetypeRepository(
+ "http://localhost:" + port + "/repo/" );
+ ArchetypeGenerationResult generationResult = archetype.generateProjectFromArchetype( agr );
+
+ if ( generationResult.getCause() != null )
+ {
+ fail( generationResult.getCause().getMessage() );
+ }
+
+ String myapp = outputDirectory + File.separator + "myapp" + File.separator;
+ assertTrue( new File( myapp + "myapp-api", ".classpath" ).exists() );
+ assertTrue( new File( myapp + "myapp-cli", ".classpath" ).exists() );
+ assertTrue( new File( myapp + "myapp-core", ".classpath" ).exists() );
+ assertTrue( new File( myapp + "myapp-model", ".classpath" ).exists() );
+ assertTrue( new File( myapp + File.separator + "myapp-stores" + File.separator + "myapp-store-memory",
+ ".classpath" ).exists() );
+ assertTrue(
+ new File( myapp + "myapp-stores" + File.separator + "myapp-store-xstream", ".classpath" ).exists() );
+
+ assertTrue( new File( myapp + "myapp-api", ".checkstyle" ).exists() );
+ assertTrue( new File( myapp + "myapp-cli", ".checkstyle" ).exists() );
+ assertTrue( new File( myapp + "myapp-core", ".checkstyle" ).exists() );
+ assertTrue( new File( myapp + "myapp-model", ".checkstyle" ).exists() );
+ assertTrue(
+ new File( myapp + "myapp-stores" + File.separator + "myapp-store-memory", ".checkstyle" ).exists() );
+ assertTrue(
+ new File( myapp + "myapp-stores" + File.separator + "myapp-store-xstream", ".checkstyle" ).exists() );
+
+ }
+
+ private Server server;
+
+ int port;
+
+ public void setUp()
+ throws Exception
+ {
+ super.setUp();
+ // Start Jetty
+
+ System.setProperty( "org.apache.maven.archetype.repository.directory",
+ getTestPath( "target/test-classes/repositories/central" ) );
+
+ server = new Server( 0 );
+
+ WebAppContext webapp = new WebAppContext();
+ webapp.setContextPath( "/repo" );
+ webapp.setWar( "target/wars/archetype-repository.war" );
+ server.setHandler( webapp );
+
+ server.start();
+
+ port = server.getConnectors()[0].getLocalPort();
+
+
+ }
+
+ public void tearDown()
+ throws Exception
+ {
+ super.tearDown();
+ // Stop Jetty
+
+ server.stop();
+ }
+
+ private void assertArchetypeCreated( File workingProject )
+ {
+ File archetypeSourcesDirectory = FileUtils.resolveFile( workingProject, "target/generated-sources/archetype" );
+ File archetypeResourcesDirectory =
+ FileUtils.resolveFile( archetypeSourcesDirectory, "src/main/resources/archetype-resources" );
+ File archetypeMetadataDirectory =
+ FileUtils.resolveFile( archetypeSourcesDirectory, "src/main/resources/META-INF/maven" );
+
+ Iterator i = org.apache.commons.io.FileUtils.iterateFiles( archetypeSourcesDirectory, null, true );
+ while ( i.hasNext() )
+ {
+ File f = (File) i.next();
+ System.err.println( f.getPath() );
+ }
+
+ File api = FileUtils.resolveFile( archetypeResourcesDirectory, "__rootArtifactId__-api" );
+ assertExistDirectory( api );
+ assertExistFile( FileUtils.resolveFile( api, "pom.xml" ) );
+
+ File cli = FileUtils.resolveFile( archetypeResourcesDirectory, "__rootArtifactId__-cli" );
+ assertExistDirectory( cli );
+ assertExistFile( FileUtils.resolveFile( cli, "pom.xml" ) );
+
+ File core = FileUtils.resolveFile( archetypeResourcesDirectory, "__rootArtifactId__-core" );
+ assertExistDirectory( core );
+ assertExistFile( FileUtils.resolveFile( core, "pom.xml" ) );
+
+ File model = FileUtils.resolveFile( archetypeResourcesDirectory, "__rootArtifactId__-model" );
+ assertExistDirectory( model );
+ assertExistFile( FileUtils.resolveFile( model, "pom.xml" ) );
+
+ File stores = FileUtils.resolveFile( archetypeResourcesDirectory, "__rootArtifactId__-stores" );
+ assertExistDirectory( stores );
+ assertExistFile( FileUtils.resolveFile( stores, "pom.xml" ) );
+ assertExistDirectory( FileUtils.resolveFile( stores, "__rootArtifactId__-store-memory" ) );
+ assertExistFile(
+ FileUtils.resolveFile( FileUtils.resolveFile( stores, "__rootArtifactId__-store-memory" ), "pom.xml" ) );
+ assertExistDirectory( FileUtils.resolveFile( stores, "__rootArtifactId__-store-xstream" ) );
+ assertExistFile(
+ FileUtils.resolveFile( FileUtils.resolveFile( stores, "__rootArtifactId__-store-xstream" ), "pom.xml" ) );
+ assertExistFile( FileUtils.resolveFile( archetypeResourcesDirectory, "pom.xml" ) );
+
+ assertExistDirectory( archetypeMetadataDirectory );
+ assertExistFile( FileUtils.resolveFile( archetypeMetadataDirectory, "archetype-metadata.xml" ) );
+ assertExistFile( FileUtils.resolveFile( archetypeSourcesDirectory, "pom.xml" ) );
+
+ }
+
+ private void assertExistDirectory( File resolveFile )
+ {
+ assertTrue( "resolveFile " + resolveFile + " !exists", resolveFile.exists() );
+ assertTrue( "resolveFile " + resolveFile + " !isDirectory", resolveFile.isDirectory() );
+ }
+
+ private void assertExistFile( File resolveFile )
+ {
+ assertTrue( "resolveFile " + resolveFile + " !exists", resolveFile.exists() );
+ assertTrue( "resolveFile " + resolveFile + " !isFile", resolveFile.isFile() );
+ }
+}
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/archetype.properties.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/archetype.properties.sample b/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/archetype.properties.sample
new file mode 100644
index 0000000..a1e3fa2
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/archetype.properties.sample
@@ -0,0 +1,8 @@
+archetype.groupId=org.codehaus.mojo.archetypes
+archetype.artifactId=maven-archetype-test
+archetype.version=1.0
+groupId=org.apache.maven.archetype.test
+artifactId=change-file-with-property
+version=1.0-SNAPSHOT
+package=archetype
+someProperty=App
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/pom.xml.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/pom.xml.sample b/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/pom.xml.sample
new file mode 100644
index 0000000..6d2da67
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/pom.xml.sample
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>change-file-with-property</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <name>Maven archetype Test Change File With Property</name>
+ <packaging>pom</packaging>
+
+</project>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/src/main/java/App.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/src/main/java/App.java b/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/src/main/java/App.java
new file mode 100644
index 0000000..081fab9
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/change-file-with-property/src/main/java/App.java
@@ -0,0 +1,4 @@
+class App
+{
+
+}
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-1/archetype.properties.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-1/archetype.properties.sample b/archetype-testing/archetype-final/src/test/resources/projects/create-1/archetype.properties.sample
new file mode 100644
index 0000000..8e43207
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-1/archetype.properties.sample
@@ -0,0 +1,8 @@
+archetype.groupId=org.codehaus.mojo.archetypes
+archetype.artifactId=maven-archetype-test
+archetype.version=1.0
+groupId=org.apache.maven.archetype.test
+artifactId=test-create-1
+version=1.0-SNAPSHOT
+package=archetype
+someProperty=A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-1/pom.xml.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-1/pom.xml.sample b/archetype-testing/archetype-final/src/test/resources/projects/create-1/pom.xml.sample
new file mode 100644
index 0000000..0fa55d5
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-1/pom.xml.sample
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>test-create-1</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <name>Maven archetype Test create-1</name>
+ <packaging>pom</packaging>
+
+</project>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/java/archetype/subfolder1/App.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/java/archetype/subfolder1/App.java b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/java/archetype/subfolder1/App.java
new file mode 100644
index 0000000..06874d9
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/java/archetype/subfolder1/App.java
@@ -0,0 +1,2 @@
+package archetype.subfolder1;
+// A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/java/archetype/subfolder2/App.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/java/archetype/subfolder2/App.java b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/java/archetype/subfolder2/App.java
new file mode 100644
index 0000000..4007b6a
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/java/archetype/subfolder2/App.java
@@ -0,0 +1 @@
+package archetype.subfolder2;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/resources/log4j.properties
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/resources/log4j.properties b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/resources/log4j.properties
new file mode 100644
index 0000000..6262c8c
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/resources/log4j.properties
@@ -0,0 +1 @@
+#archetype
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/webapp/WEB-INF/web.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..6f65b31
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,3 @@
+<!--
+archetype
+-->
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/site/site.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/site/site.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/site/site.xml
new file mode 100644
index 0000000..6f65b31
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/site/site.xml
@@ -0,0 +1,3 @@
+<!--
+archetype
+-->
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/test/java/archetype/test/AppTest.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/test/java/archetype/test/AppTest.java b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/test/java/archetype/test/AppTest.java
new file mode 100644
index 0000000..ba3efaf
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/test/java/archetype/test/AppTest.java
@@ -0,0 +1 @@
+package archetype.test;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/test/resources/log4j.properties
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/test/resources/log4j.properties b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/test/resources/log4j.properties
new file mode 100644
index 0000000..6262c8c
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-1/src/test/resources/log4j.properties
@@ -0,0 +1 @@
+#archetype
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/archetype.properties.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/archetype.properties.sample b/archetype-testing/archetype-final/src/test/resources/projects/create-2/archetype.properties.sample
new file mode 100644
index 0000000..40033c5
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/archetype.properties.sample
@@ -0,0 +1,8 @@
+archetype.groupId=org.codehaus.mojo.archetypes
+archetype.artifactId=maven-archetype-test
+archetype.version=1.0
+groupId=org.apache.maven.archetype.test
+artifactId=test-create-2
+version=1.0-SNAPSHOT
+package=org.apache.maven.archetype
+someProperty=A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/pom.xml.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/pom.xml.sample b/archetype-testing/archetype-final/src/test/resources/projects/create-2/pom.xml.sample
new file mode 100644
index 0000000..afdcb33
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/pom.xml.sample
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>test-create-2</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <name>Maven archetype Test create-2</name>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>subModule</module>
+ </modules>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/java/org/apache/maven/archetype/subfolder1/App.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/java/org/apache/maven/archetype/subfolder1/App.java b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/java/org/apache/maven/archetype/subfolder1/App.java
new file mode 100644
index 0000000..b8fa8f2
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/java/org/apache/maven/archetype/subfolder1/App.java
@@ -0,0 +1,2 @@
+package org.apache.maven.archetype.subfolder1;
+// A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/java/org/apache/maven/archetype/subfolder2/App.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/java/org/apache/maven/archetype/subfolder2/App.java b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/java/org/apache/maven/archetype/subfolder2/App.java
new file mode 100644
index 0000000..826187d
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/java/org/apache/maven/archetype/subfolder2/App.java
@@ -0,0 +1 @@
+package org.apache.maven.archetype.subfolder2;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/resources/log4j.properties
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/resources/log4j.properties b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/resources/log4j.properties
new file mode 100644
index 0000000..1388ff5
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/it-test/resources/log4j.properties
@@ -0,0 +1 @@
+#org.apache.maven.archetype
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/java/org/apache/maven/archetype/subfolder1/App.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/java/org/apache/maven/archetype/subfolder1/App.java b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/java/org/apache/maven/archetype/subfolder1/App.java
new file mode 100644
index 0000000..b8fa8f2
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/java/org/apache/maven/archetype/subfolder1/App.java
@@ -0,0 +1,2 @@
+package org.apache.maven.archetype.subfolder1;
+// A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/java/org/apache/maven/archetype/subfolder2/App.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/java/org/apache/maven/archetype/subfolder2/App.java b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/java/org/apache/maven/archetype/subfolder2/App.java
new file mode 100644
index 0000000..826187d
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/java/org/apache/maven/archetype/subfolder2/App.java
@@ -0,0 +1 @@
+package org.apache.maven.archetype.subfolder2;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/resources/log4j.properties
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/resources/log4j.properties b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/resources/log4j.properties
new file mode 100644
index 0000000..1388ff5
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/resources/log4j.properties
@@ -0,0 +1 @@
+#org.apache.maven.archetype
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/webapp/WEB-INF/web.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..850b106
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,3 @@
+<!--
+org.apache.maven.archetype
+-->
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/site/site.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/site/site.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/site/site.xml
new file mode 100644
index 0000000..850b106
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/site/site.xml
@@ -0,0 +1,3 @@
+<!--
+org.apache.maven.archetype
+-->
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/test/java/org/apache/maven/archetype/test/AppTest.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/test/java/org/apache/maven/archetype/test/AppTest.java b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/test/java/org/apache/maven/archetype/test/AppTest.java
new file mode 100644
index 0000000..1acd419
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/test/java/org/apache/maven/archetype/test/AppTest.java
@@ -0,0 +1 @@
+package org.apache.maven.archetype.test;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/test/resources/log4j.properties
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/test/resources/log4j.properties b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/test/resources/log4j.properties
new file mode 100644
index 0000000..1388ff5
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/src/test/resources/log4j.properties
@@ -0,0 +1 @@
+#org.apache.maven.archetype
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-2/subModule/pom.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-2/subModule/pom.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-2/subModule/pom.xml
new file mode 100644
index 0000000..9ebc355
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-2/subModule/pom.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>test-create-2</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>test-create-2</artifactId>
+ <name>Maven archetype Test create-2-subModule</name>
+ <packaging>pom</packaging>
+
+</project>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/.classpath
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/.classpath b/archetype-testing/archetype-final/src/test/resources/projects/create-3/.classpath
new file mode 100644
index 0000000..807b540
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/.classpath
@@ -0,0 +1,2 @@
+org/apache/maven/archetype/test
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/pom.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/pom.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/pom.xml
new file mode 100644
index 0000000..25d6fe3
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/pom.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>test-create-3</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <name>Maven archetype Test create-3-application</name>
+ <artifactId>test-create-3-application</artifactId>
+ <packaging>jar</packaging>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/java/ItTestAll.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/java/ItTestAll.java b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/java/ItTestAll.java
new file mode 100644
index 0000000..807b540
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/java/ItTestAll.java
@@ -0,0 +1,2 @@
+org/apache/maven/archetype/test
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/java/org/apache/maven/archetype/test/ItTest1.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/java/org/apache/maven/archetype/test/ItTest1.java b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/java/org/apache/maven/archetype/test/ItTest1.java
new file mode 100644
index 0000000..6608ef5
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/java/org/apache/maven/archetype/test/ItTest1.java
@@ -0,0 +1,3 @@
+package org.apache.maven.archetype.test;
+org/apache/maven/archetype/test
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/resources/ItTest1Result.txt
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/resources/ItTest1Result.txt b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/resources/ItTest1Result.txt
new file mode 100644
index 0000000..c0e3f93
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/it-test/resources/ItTest1Result.txt
@@ -0,0 +1,3 @@
+A String to search for
+
+org/apache/maven/archetype/test
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/Main.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/Main.java b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/Main.java
new file mode 100644
index 0000000..807b540
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/Main.java
@@ -0,0 +1,2 @@
+org/apache/maven/archetype/test
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/Application.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/Application.java b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/Application.java
new file mode 100644
index 0000000..ad47b5d
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/Application.java
@@ -0,0 +1,3 @@
+package org.apache.maven.archetype.test.application;
+org/apache/maven/archetype/test/application
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/audios/Application.ogg
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/audios/Application.ogg b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/audios/Application.ogg
new file mode 100644
index 0000000..9598629
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/audios/Application.ogg
@@ -0,0 +1 @@
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/images/Application.png
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/images/Application.png b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/images/Application.png
new file mode 100644
index 0000000..9598629
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/java/org/apache/maven/archetype/test/application/images/Application.png
@@ -0,0 +1 @@
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/META-INF/MANIFEST.MF
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/META-INF/MANIFEST.MF b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..807b540
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/META-INF/MANIFEST.MF
@@ -0,0 +1,2 @@
+org/apache/maven/archetype/test
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/log4j.properties
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/log4j.properties b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/log4j.properties
new file mode 100644
index 0000000..807b540
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/log4j.properties
@@ -0,0 +1,2 @@
+org/apache/maven/archetype/test
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/org/apache/maven/archetype/test/application/some/Gro.groovy
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/org/apache/maven/archetype/test/application/some/Gro.groovy b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/org/apache/maven/archetype/test/application/some/Gro.groovy
new file mode 100644
index 0000000..0d4c89d
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/org/apache/maven/archetype/test/application/some/Gro.groovy
@@ -0,0 +1,2 @@
+org/apache/maven/archetype/test
+A String to search for
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/splash.png
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/splash.png b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/splash.png
new file mode 100644
index 0000000..9598629
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/main/resources/splash.png
@@ -0,0 +1 @@
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/test/java/TestAll.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/test/java/TestAll.java b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/test/java/TestAll.java
new file mode 100644
index 0000000..807b540
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/test/java/TestAll.java
@@ -0,0 +1,2 @@
+org/apache/maven/archetype/test
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/test/java/org/apache/maven/archetype/test/application/ApplicationTest.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/test/java/org/apache/maven/archetype/test/application/ApplicationTest.java b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/test/java/org/apache/maven/archetype/test/application/ApplicationTest.java
new file mode 100644
index 0000000..ad47b5d
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/application/src/test/java/org/apache/maven/archetype/test/application/ApplicationTest.java
@@ -0,0 +1,3 @@
+package org.apache.maven.archetype.test.application;
+org/apache/maven/archetype/test/application
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/archetype.properties.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/archetype.properties.sample b/archetype-testing/archetype-final/src/test/resources/projects/create-3/archetype.properties.sample
new file mode 100644
index 0000000..be07e6e
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/archetype.properties.sample
@@ -0,0 +1,10 @@
+archetype.groupId=org.codehaus.mojo.archetypes
+archetype.artifactId=maven-archetype-test
+archetype.version=1.0
+
+groupId=org.apache.maven.archetype.test
+artifactId=test-create-3
+version=1.0-SNAPSHOT
+package=org.apache.maven.archetype
+
+someProperty=A String to search for
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/pom.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/pom.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/pom.xml
new file mode 100644
index 0000000..2c729ec
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/pom.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>test-create-3</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <name>Maven archetype Test create-3-libraries</name>
+ <artifactId>test-create-3-libraries</artifactId>
+ <packaging>pom</packaging>
+ <modules>
+ <module>prj-a</module>
+ <module>prj-b</module>
+ </modules>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-a/pom.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-a/pom.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-a/pom.xml
new file mode 100644
index 0000000..7a2e5b5
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-a/pom.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>test-create-3-libraries</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <name>Maven archetype Test create-3-libraries-project-a</name>
+ <artifactId>test-create-3-libraries-project-a</artifactId>
+ <packaging>jar</packaging>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-a/src/main/mdo/descriptor.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-a/src/main/mdo/descriptor.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-a/src/main/mdo/descriptor.xml
new file mode 100644
index 0000000..d90c7e7
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-a/src/main/mdo/descriptor.xml
@@ -0,0 +1,2 @@
+<!-- org/apache/maven/archetype/test
+A String to search for -->
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/pom.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/pom.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/pom.xml
new file mode 100644
index 0000000..15d7eda
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/pom.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>test-create-3-libraries</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <name>Maven archetype Test create-3-libraries-project-b</name>
+ <artifactId>test-create-3-libraries-project-b</artifactId>
+ <packaging>jar</packaging>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/main/java/org/apache/maven/archetype/test/com/Component.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/main/java/org/apache/maven/archetype/test/com/Component.java b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/main/java/org/apache/maven/archetype/test/com/Component.java
new file mode 100644
index 0000000..bea4d6e
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/main/java/org/apache/maven/archetype/test/com/Component.java
@@ -0,0 +1,3 @@
+package org.apache.maven.archetype.test.com;
+org/apache/maven/archetype/test/com
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/main/java/org/apache/maven/archetype/test/com/package.html
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/main/java/org/apache/maven/archetype/test/com/package.html b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/main/java/org/apache/maven/archetype/test/com/package.html
new file mode 100644
index 0000000..d90c7e7
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/main/java/org/apache/maven/archetype/test/com/package.html
@@ -0,0 +1,2 @@
+<!-- org/apache/maven/archetype/test
+A String to search for -->
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/test/java/org/apache/maven/archetype/test/common/ComponentTest.java
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/test/java/org/apache/maven/archetype/test/common/ComponentTest.java b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/test/java/org/apache/maven/archetype/test/common/ComponentTest.java
new file mode 100644
index 0000000..06e91ba
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/libs/prj-b/src/test/java/org/apache/maven/archetype/test/common/ComponentTest.java
@@ -0,0 +1,3 @@
+package org.apache.maven.archetype.test.common;
+org/apache/maven/archetype/test/common
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/pom.xml.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/pom.xml.sample b/archetype-testing/archetype-final/src/test/resources/projects/create-3/pom.xml.sample
new file mode 100644
index 0000000..bad174b
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/pom.xml.sample
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>test-create-3</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <name>Maven archetype Test create-3</name>
+ <packaging>pom</packaging>
+ <modules>
+ <module>application</module>
+ <module>libs</module>
+ </modules>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/profiles.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/profiles.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-3/profiles.xml
new file mode 100644
index 0000000..1e0efde
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/profiles.xml
@@ -0,0 +1,4 @@
+<!-- org/apache/maven/archetype/test
+A String to search for -->
+<profilesXml>
+</profilesXml>
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/apt/index.apt
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/apt/index.apt b/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/apt/index.apt
new file mode 100644
index 0000000..807b540
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/apt/index.apt
@@ -0,0 +1,2 @@
+org/apache/maven/archetype/test
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/resources/site.png
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/resources/site.png b/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/resources/site.png
new file mode 100644
index 0000000..9598629
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/resources/site.png
@@ -0,0 +1 @@
+A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/site.xml
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/site.xml b/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/site.xml
new file mode 100644
index 0000000..d90c7e7
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-3/src/site/site.xml
@@ -0,0 +1,2 @@
+<!-- org/apache/maven/archetype/test
+A String to search for -->
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-4/archetype.properties.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-4/archetype.properties.sample b/archetype-testing/archetype-final/src/test/resources/projects/create-4/archetype.properties.sample
new file mode 100644
index 0000000..ab54213
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-4/archetype.properties.sample
@@ -0,0 +1,8 @@
+archetype.groupId=org.codehaus.mojo.archetypes
+archetype.artifactId=maven-archetype-test
+archetype.version=1.0
+groupId=org.apache.maven.archetype.test
+artifactId=test-create-4
+version=1.0-SNAPSHOT
+package=org.apache.maven.archetype
+someProperty=A String to search for
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-archetype/blob/8e0fe06a/archetype-testing/archetype-final/src/test/resources/projects/create-4/pom.xml.sample
----------------------------------------------------------------------
diff --git a/archetype-testing/archetype-final/src/test/resources/projects/create-4/pom.xml.sample b/archetype-testing/archetype-final/src/test/resources/projects/create-4/pom.xml.sample
new file mode 100644
index 0000000..a5cd406
--- /dev/null
+++ b/archetype-testing/archetype-final/src/test/resources/projects/create-4/pom.xml.sample
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+<project
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.apache.maven.archetype.test</groupId>
+ <artifactId>test-create-4</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <name>Maven archetype Test create-4 A String to search for</name>
+ <description>Some description A String to search for</description>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>subModuleWar</module>
+ <module>subModuleEAR</module>
+ </modules>
+</project>