You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2010/09/26 16:49:05 UTC

svn commit: r1001441 - in /maven/archetype/trunk/archetype-common: ./ src/main/java/org/apache/maven/archetype/downloader/ src/test/archetypes/basic-1.0/META-INF/maven/archetypes/ src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/ src/test/...

Author: hboutemy
Date: Sun Sep 26 14:49:04 2010
New Revision: 1001441

URL: http://svn.apache.org/viewvc?rev=1001441&view=rev
Log:
[ARCHETYPE-306] download archetypes with their pom

Added:
    maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/
    maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/
    maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/pom.xml   (with props)
    maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/
    maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/fileset/
    maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/fileset/pom.xml   (with props)
    maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/
    maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/
    maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/old/
    maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/old/pom.xml   (with props)
    maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/
    maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/partial/
    maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/partial/pom.xml   (with props)
    maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/
    maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/site/
    maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/site/pom.xml   (with props)
Modified:
    maven/archetype/trunk/archetype-common/pom.xml
    maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/DefaultDownloader.java
    maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/repositorycrawler/DefaultRepositoryCrawlerTest.java
    maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripTest.java
    maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripWithProxyTest.java
    maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/RoundtripMultiModuleTest.java

Modified: maven/archetype/trunk/archetype-common/pom.xml
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/pom.xml?rev=1001441&r1=1001440&r2=1001441&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/pom.xml (original)
+++ maven/archetype/trunk/archetype-common/pom.xml Sun Sep 26 14:49:04 2010
@@ -245,6 +245,8 @@ under the License.
                 <mkdir dir="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/" />
 
                 <jar destfile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.jar" basedir="${basedir}/src/test/archetypes/${test.projects.source.directory}/" />
+
+                <copy tofile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.pom" file="${basedir}/src/test/archetypes/${test.projects.source.directory}/META-INF/maven/archetypes/${test.projects.name}/pom.xml" />
               </tasks>
             </configuration>
             <goals>
@@ -266,6 +268,8 @@ under the License.
                 <mkdir dir="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/" />
 
                 <jar destfile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.jar" basedir="${basedir}/src/test/archetypes/${test.projects.source.directory}/" />
+
+                <copy tofile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.pom" file="${basedir}/src/test/archetypes/${test.projects.source.directory}/META-INF/maven/archetypes/${test.projects.name}/pom.xml" />
               </tasks>
             </configuration>
             <goals>
@@ -288,6 +292,8 @@ under the License.
                 <mkdir dir="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/" />
 
                 <jar destfile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.jar" basedir="${basedir}/src/test/archetypes/${test.projects.source.directory}/" />
+
+                <copy tofile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.pom" file="${basedir}/src/test/archetypes/${test.projects.source.directory}/META-INF/maven/archetypes/${test.projects.name}/pom.xml" />
               </tasks>
             </configuration>
             <goals>
@@ -310,6 +316,8 @@ under the License.
                 <mkdir dir="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/" />
 
                 <jar destfile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.jar" basedir="${basedir}/src/test/archetypes/${test.projects.source.directory}/" />
+
+                <copy tofile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.pom" file="${basedir}/src/test/archetypes/${test.projects.source.directory}/META-INF/maven/archetypes/${test.projects.name}/pom.xml" />
               </tasks>
             </configuration>
             <goals>
@@ -332,6 +340,8 @@ under the License.
                 <mkdir dir="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/" />
 
                 <jar destfile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.jar" basedir="${basedir}/src/test/archetypes/${test.projects.source.directory}/" />
+
+                <copy tofile="${basedir}/target/test-classes/${test.projects.repository}/${test.projects.target.directory}/${test.projects.archetype}.pom" file="${basedir}/src/test/archetypes/${test.projects.source.directory}/META-INF/maven/archetypes/${test.projects.name}/pom.xml" />
               </tasks>
             </configuration>
             <goals>

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/DefaultDownloader.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/DefaultDownloader.java?rev=1001441&r1=1001440&r2=1001441&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/DefaultDownloader.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/DefaultDownloader.java Sun Sep 26 14:49:04 2010
@@ -52,6 +52,7 @@ public class DefaultDownloader
         throws DownloadException, DownloadNotFoundException
    {
         Artifact artifact = artifactFactory.createArtifact( groupId, artifactId, version, Artifact.SCOPE_RUNTIME, "jar" );
+        Artifact artifactPom = artifactFactory.createArtifact( groupId, artifactId, version, Artifact.SCOPE_RUNTIME, "pom" );
 
         List<ArtifactRepository> repositories = new ArrayList<ArtifactRepository>( remoteRepositories );
         if ( repositories.isEmpty() && archetypeRepository != null )
@@ -76,6 +77,18 @@ public class DefaultDownloader
         {
             throw new DownloadNotFoundException( "Requested " + artifact.getId() + " download does not exist.", e );
         }
+        try
+        {
+            artifactResolver.resolve( artifactPom, repositories, localRepo );
+        }
+        catch ( ArtifactResolutionException e )
+        {
+            throw new DownloadException( "Error downloading POM for " + artifact.getId() + ".", e );
+        }
+        catch ( ArtifactNotFoundException e )
+        {
+            throw new DownloadNotFoundException( "Requested " + artifact.getId() + " download's POM does not exist.", e );
+        }
 
         return artifact.getFile();
     }

Added: maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/pom.xml
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/pom.xml?rev=1001441&view=auto
==============================================================================
--- maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/pom.xml (added)
+++ maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/pom.xml Sun Sep 26 14:49:04 2010
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+    <groupId>archetypes</groupId>
+    <artifactId>basic</artifactId>
+    <version>1.0</version>
+</project>

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/basic-1.0/META-INF/maven/archetypes/basic/pom.xml
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/fileset/pom.xml
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/fileset/pom.xml?rev=1001441&view=auto
==============================================================================
--- maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/fileset/pom.xml (added)
+++ maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/fileset/pom.xml Sun Sep 26 14:49:04 2010
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+    <groupId>archetypes</groupId>
+    <artifactId>fileset</artifactId>
+    <version>1.0</version>
+</project>

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/fileset/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/fileset/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/fileset-1.0/META-INF/maven/archetypes/fileset/pom.xml
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/old/pom.xml
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/old/pom.xml?rev=1001441&view=auto
==============================================================================
--- maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/old/pom.xml (added)
+++ maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/old/pom.xml Sun Sep 26 14:49:04 2010
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+    <groupId>archetypes</groupId>
+    <artifactId>old</artifactId>
+    <version>1.0</version>
+</project>

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/old/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/old/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/old-1.0/META-INF/maven/archetypes/old/pom.xml
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/partial/pom.xml
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/partial/pom.xml?rev=1001441&view=auto
==============================================================================
--- maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/partial/pom.xml (added)
+++ maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/partial/pom.xml Sun Sep 26 14:49:04 2010
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+    <groupId>archetypes</groupId>
+    <artifactId>partial</artifactId>
+    <version>1.0</version>
+</project>

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/partial/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/partial/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/partial-1.0/META-INF/maven/archetypes/partial/pom.xml
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/site/pom.xml
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/site/pom.xml?rev=1001441&view=auto
==============================================================================
--- maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/site/pom.xml (added)
+++ maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/site/pom.xml Sun Sep 26 14:49:04 2010
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+    <groupId>archetypes</groupId>
+    <artifactId>site</artifactId>
+    <version>1.0</version>
+</project>

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/site/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/site/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Propchange: maven/archetype/trunk/archetype-common/src/test/archetypes/site-1.0/META-INF/maven/archetypes/site/pom.xml
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/repositorycrawler/DefaultRepositoryCrawlerTest.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/repositorycrawler/DefaultRepositoryCrawlerTest.java?rev=1001441&r1=1001440&r2=1001441&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/repositorycrawler/DefaultRepositoryCrawlerTest.java (original)
+++ maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/repositorycrawler/DefaultRepositoryCrawlerTest.java Sun Sep 26 14:49:04 2010
@@ -46,7 +46,7 @@ extends AbstractMojoTestCase
         System.err.println ( "result = " + result );
         assertTrue (
             ( 5 <= result.getArchetypes ().size () )
-            && ( result.getArchetypes ().size () >= 7 )
+            && ( result.getArchetypes ().size () <= 8 )
         );
         
         // TODO: should write to another directory 

Modified: maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripTest.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripTest.java?rev=1001441&r1=1001440&r2=1001441&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripTest.java (original)
+++ maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripTest.java Sun Sep 26 14:49:04 2010
@@ -134,17 +134,20 @@ public class ArchetyperRoundtripTest
             new File( generatedArchetypeProject.getBuild().getDirectory() ),
             generatedArchetypeProject.getBuild().getFinalName() );
 
-        File archetypeInRepository =
-            new File( centralRepository.getBasedir(), StringUtils.replace( generatedArchetypeProject.getGroupId(), ".",
-                                                                           File.separator )
+        String baseName = StringUtils.replace( generatedArchetypeProject.getGroupId(), ".", File.separator )
                 + File.separator
                 + generatedArchetypeProject.getArtifactId()
                 + File.separator
                 + generatedArchetypeProject.getVersion()
                 + File.separator
-                + generatedArchetypeProject.getBuild().getFinalName() + ".jar" );
+                + generatedArchetypeProject.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();

Modified: maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripWithProxyTest.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripWithProxyTest.java?rev=1001441&r1=1001440&r2=1001441&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripWithProxyTest.java (original)
+++ maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/ArchetyperRoundtripWithProxyTest.java Sun Sep 26 14:49:04 2010
@@ -144,17 +144,20 @@ public class ArchetyperRoundtripWithProx
             new File( generatedArchetypeProject.getBuild().getDirectory() ),
             generatedArchetypeProject.getBuild().getFinalName() );
 
+        String baseName = StringUtils.replace( generatedArchetypeProject.getGroupId(), ".", File.separator )
+                        + File.separator
+                        + generatedArchetypeProject.getArtifactId()
+                        + File.separator
+                        + generatedArchetypeProject.getVersion()
+                        + File.separator
+                        + generatedArchetypeProject.getBuild().getFinalName();
         File archetypeInRepository =
-            new File( centralRepository.getBasedir(), StringUtils.replace( generatedArchetypeProject.getGroupId(), ".",
-                                                                           File.separator )
-                + File.separator
-                + generatedArchetypeProject.getArtifactId()
-                + File.separator
-                + generatedArchetypeProject.getVersion()
-                + File.separator
-                + generatedArchetypeProject.getBuild().getFinalName() + ".jar" );
+            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();

Modified: maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/RoundtripMultiModuleTest.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/RoundtripMultiModuleTest.java?rev=1001441&r1=1001440&r2=1001441&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/RoundtripMultiModuleTest.java (original)
+++ maven/archetype/trunk/archetype-common/src/test/java/org/apache/maven/archetype/test/RoundtripMultiModuleTest.java Sun Sep 26 14:49:04 2010
@@ -150,17 +150,20 @@ public class RoundtripMultiModuleTest
             new File( generatedArchetypeProject.getBuild().getDirectory() ),
             generatedArchetypeProject.getBuild().getFinalName() );
 
+        String baseName = StringUtils.replace( generatedArchetypeProject.getGroupId(), ".", File.separator )
+                        + File.separator
+                        + generatedArchetypeProject.getArtifactId()
+                        + File.separator
+                        + generatedArchetypeProject.getVersion()
+                        + File.separator
+                        + generatedArchetypeProject.getBuild().getFinalName();
         File archetypeInRepository =
-            new File( centralRepository.getBasedir(), StringUtils.replace( generatedArchetypeProject.getGroupId(), ".",
-                                                                           File.separator )
-                + File.separator
-                + generatedArchetypeProject.getArtifactId()
-                + File.separator
-                + generatedArchetypeProject.getVersion()
-                + File.separator
-                + generatedArchetypeProject.getBuild().getFinalName() + ".jar" );
+            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();