You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2007/10/06 06:29:06 UTC

svn commit: r582450 - in /maven/sandbox/trunk/archetypeng: archetypeng-common/src/main/java/org/apache/maven/archetype/ archetypeng-common/src/main/java/org/apache/maven/archetype/common/ archetypeng-common/src/main/java/org/apache/maven/archetype/gene...

Author: jvanzyl
Date: Fri Oct  5 21:29:03 2007
New Revision: 582450

URL: http://svn.apache.org/viewvc?rev=582450&view=rev
Log:
o flesh out the archetyper component so it now creates and generates correctly
o fix the selector so that it captures the release or latest version from the download
o make the archetype artifact manager take an archetype definition so that the selector can pass one in and have the download process which then taken by the selector
o making the create archetype from project use the new archetyper
o gracefully fail through all the archetype sources, and then gracefully fail through the default wiki source

Added:
    maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/GavCalculator.java   (with props)
Modified:
    maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/DefaultArchetyper.java
    maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/ArchetypeArtifactManager.java
    maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/DefaultArchetypeArtifactManager.java
    maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/generator/DefaultArchetypeGenerator.java
    maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java
    maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateProjectFromArchetypeMojo.java
    maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java
    maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeSelector.java

Modified: maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/DefaultArchetyper.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/DefaultArchetyper.java?rev=582450&r1=582449&r2=582450&view=diff
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/DefaultArchetyper.java (original)
+++ maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/DefaultArchetyper.java Fri Oct  5 21:29:03 2007
@@ -14,7 +14,7 @@
 public class DefaultArchetyper
     implements Archetyper
 {
-    /** @plexus.requirement */
+    /** @plexus.requirement role-hint="fileset" */
     private ArchetypeCreator creator;
 
     /** @plexus.requirement */

Modified: maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/ArchetypeArtifactManager.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/ArchetypeArtifactManager.java?rev=582450&r1=582449&r2=582450&view=diff
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/ArchetypeArtifactManager.java (original)
+++ maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/ArchetypeArtifactManager.java Fri Oct  5 21:29:03 2007
@@ -89,18 +89,10 @@
         throws
         UnknownArchetype;
 
-    /**
-     */
-    boolean exists(
-        String groupId,
-        String artifactId,
-        String version,
-        ArtifactRepository localRepository,
-        List repositories
-    );
+    boolean exists( ArchetypeDefinition ad,
+                    ArtifactRepository localRepository,
+                    List remoteRepositories );
 
-    /**
-     */
     boolean isFileSetArchetype(
         String groupId,
         String artifactId,

Modified: maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/DefaultArchetypeArtifactManager.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/DefaultArchetypeArtifactManager.java?rev=582450&r1=582449&r2=582450&view=diff
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/DefaultArchetypeArtifactManager.java (original)
+++ maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/DefaultArchetypeArtifactManager.java Fri Oct  5 21:29:03 2007
@@ -79,8 +79,7 @@
     {
         try
         {
-            return
-                downloader.download( groupId, artifactId, version, localRepository, repositories );
+            return downloader.download( groupId, artifactId, version, localRepository, repositories );
         }
         catch ( DownloadNotFoundException ex )
         {
@@ -230,18 +229,18 @@
         }
     }
 
-    public boolean exists(
-        String groupId,
-        String artifactId,
-        String version,
-        ArtifactRepository localRepository,
-        List repositories
-    )
+    public boolean exists( ArchetypeDefinition ad, ArtifactRepository localRepository, List remoteRepositories )
     {
         try
         {
-            File archetypeFile =
-                downloader.download( groupId, artifactId, version, localRepository, repositories );
+            File archetypeFile = downloader.download( ad.getGroupId(), ad.getArtifactId(), ad.getVersion(), localRepository, remoteRepositories );
+
+            if ( ad.getVersion().equals( "RELEASE" ) || ad.getVersion().equals( "LATEST" ) )
+            {
+                // We do this so that we don't make another network call to get the version. The downloader
+                // should tell us or just replace it with the new artifact code.
+                ad.setVersion( GavCalculator.calculate( archetypeFile.getAbsolutePath() ).getVersion() );
+            }
 
             return archetypeFile.exists();
         }

Added: maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/GavCalculator.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/GavCalculator.java?rev=582450&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/GavCalculator.java (added)
+++ maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/GavCalculator.java Fri Oct  5 21:29:03 2007
@@ -0,0 +1,101 @@
+package org.apache.maven.archetype.common;
+
+/**
+ * @author Jason van Zyl
+ * @author cstamas
+ */
+public class GavCalculator
+{
+    public static Gav calculate( String s )
+    {
+        int n1 = s.lastIndexOf( '/' );
+
+        if ( n1 == -1 )
+        {
+            return null;
+        }
+
+        int n2 = s.lastIndexOf( '/', n1 - 1 );
+
+        if ( n2 == -1 )
+        {
+            return null;
+        }
+
+        int n3 = s.lastIndexOf( '/', n2 - 1 );
+
+        if ( n3 == -1 )
+        {
+            return null;
+        }
+
+        String ext = s.substring( s.lastIndexOf( '.' ) + 1 );
+        String g = s.substring( 0, n3 ).replace( '/', '.' );
+        String a = s.substring( n3 + 1, n2 );
+        String v = s.substring( n2 + 1, n1 );
+        String n = s.substring( n1 + 1 );
+        boolean primary = n.equals( a + "-" + v + "." + ext );
+        String c = null;
+        if (!primary) {
+            c = s.substring( n1 + a.length() + v.length() + 3, s.lastIndexOf( '.' ) );
+        }
+
+        return new Gav( g, a, v, c, n, primary );
+    }
+
+    public static class Gav
+    {
+        private String groupId;
+
+        private String artifactId;
+
+        private String version;
+
+        private String classifier;
+
+        private String name;
+
+        private boolean primary;
+
+        public Gav( String groupId, String artifactId, String version, String classifier, String name, boolean primary )
+        {
+            this.groupId = groupId;
+            this.artifactId = artifactId;
+            this.version = version;
+            this.classifier = classifier;
+            this.name = name;
+            this.primary = primary;
+        }
+
+        public String getGroupId()
+        {
+            return groupId;
+        }
+
+        public String getArtifactId()
+        {
+            return artifactId;
+        }
+
+        public String getVersion()
+        {
+            return version;
+        }
+
+        public String getClassifier()
+        {
+            return classifier;
+        }
+
+        public String getName()
+        {
+            return name;
+        }
+
+        public boolean isPrimary()
+        {
+            return primary;
+        }
+
+    }
+}

Propchange: maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/GavCalculator.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/common/GavCalculator.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Modified: maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/generator/DefaultArchetypeGenerator.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/generator/DefaultArchetypeGenerator.java?rev=582450&r1=582449&r2=582450&view=diff
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/generator/DefaultArchetypeGenerator.java (original)
+++ maven/sandbox/trunk/archetypeng/archetypeng-common/src/main/java/org/apache/maven/archetype/generator/DefaultArchetypeGenerator.java Fri Oct  5 21:29:03 2007
@@ -97,6 +97,7 @@
         ArchetypeGenerationFailure
     {
         Properties properties = initialiseArchetypeProperties( propertyFile );
+
         generateArchetype( properties, localRepository, repositories, basedir );
     }
 
@@ -129,14 +130,7 @@
             throw new ArchetypeNotDefined( "The archetype is not defined" );
         }
 
-        if ( !archetypeArtifactManager.exists(
-            archetypeDefinition.getGroupId(),
-            archetypeDefinition.getArtifactId(),
-            archetypeDefinition.getVersion(),
-            localRepository,
-            repositories
-        )
-            )
+        if ( !archetypeArtifactManager.exists( archetypeDefinition, localRepository, repositories ) )
         {
             throw new UnknownArchetype(
                 "The desired archetype does not exist (" + archetypeDefinition.getGroupId() + ":"

Modified: maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java?rev=582450&r1=582449&r2=582450&view=diff
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java (original)
+++ maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java Fri Oct  5 21:29:03 2007
@@ -19,16 +19,17 @@
 
 package org.apache.maven.archetype.mojos;
 
+import org.apache.maven.archetype.ArchetypeCreationRequest;
+import org.apache.maven.archetype.ArchetypeCreationResult;
+import org.apache.maven.archetype.Archetyper;
 import org.apache.maven.archetype.common.ArchetypePropertiesManager;
 import org.apache.maven.archetype.common.ArchetypeRegistryManager;
-import org.apache.maven.archetype.creator.ArchetypeCreator;
 import org.apache.maven.archetype.ui.ArchetypeCreationConfigurator;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.plugin.AbstractMojo;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.project.MavenProject;
-import org.codehaus.plexus.util.PropertyUtils;
 
 import java.io.File;
 import java.util.List;
@@ -57,8 +58,8 @@
     /** @component */
     ArchetypeRegistryManager archetypeRegistryManager;
 
-    /** @component role-hint="fileset" */
-    ArchetypeCreator creator;
+    /** @component */
+    Archetyper archetyper;
 
     /** @component */
     private ArchetypePropertiesManager propertiesManager;
@@ -174,22 +175,24 @@
                     archetypeRegistryFile
                 );
 
+            ArchetypeCreationRequest request = new ArchetypeCreationRequest()
+                .setProject( project )
+                .setPropertyFile( propertyFile )
+                .setLanguages( languages )
+                .setFiltereds( filtereds )
+                .setIgnoreReplica( ignoreReplica )
+                .setPreserveCData( preserveCData )
+                .setKeepParent( keepParent )
+                .setPartialArchetype( partialArchetype )
+                .setArchetypeRegistryFile( archetypeRegistryFile )
+                .setLocalRepository( localRepository );
 
-            //Create a request here which encapsulates everything below and then use Archetyper to do the creation.
+            ArchetypeCreationResult result = archetyper.createArchetypeFromProject( request );
 
-            creator.createArchetype(
-                project,
-                propertyFile,
-                languages,
-                filtereds,
-                defaultEncoding,
-                ignoreReplica,
-                preserveCData,
-                keepParent,
-                partialArchetype,
-                archetypeRegistryFile,
-                localRepository
-            );
+            if ( result.getCause() != null )
+            {
+                throw new MojoExecutionException( result.getCause().getMessage(), result.getCause() );
+            }
 
             getLog().info( "Archetype created in target/generated-sources/archetypeng" );
 

Modified: maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateProjectFromArchetypeMojo.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateProjectFromArchetypeMojo.java?rev=582450&r1=582449&r2=582450&view=diff
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateProjectFromArchetypeMojo.java (original)
+++ maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateProjectFromArchetypeMojo.java Fri Oct  5 21:29:03 2007
@@ -21,7 +21,6 @@
 
 import org.apache.maven.archetype.common.ArchetypePropertiesManager;
 import org.apache.maven.archetype.common.ArchetypeRegistryManager;
-import org.apache.maven.archetype.common.Constants;
 import org.apache.maven.archetype.generator.ArchetypeGenerator;
 import org.apache.maven.archetype.ui.ArchetypeGenerationConfigurator;
 import org.apache.maven.archetype.ui.ArchetypeSelector;
@@ -35,7 +34,6 @@
 import org.apache.maven.shared.invoker.InvocationRequest;
 import org.apache.maven.shared.invoker.Invoker;
 import org.apache.maven.shared.invoker.MavenInvocationException;
-import org.codehaus.plexus.util.FileUtils;
 import org.codehaus.plexus.util.PropertyUtils;
 import org.codehaus.plexus.util.StringUtils;
 
@@ -205,7 +203,7 @@
         // Configure Generation
 
         // At this point the project has been generated from the archetype and now we will
-        // run some goals that the archetype creator has requested to be run once the project
+        // run some goals that the archetype archetyper has requested to be run once the project
         // has been created.
 
         Properties properties = PropertyUtils.loadProperties( propertyFile );

Modified: maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java?rev=582450&r1=582449&r2=582450&view=diff
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java (original)
+++ maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java Fri Oct  5 21:29:03 2007
@@ -93,14 +93,7 @@
             throw new ArchetypeNotDefined( "The archetype is not defined" );
         }
 
-        if ( !archetypeArtifactManager.exists(
-            archetypeDefinition.getGroupId(),
-            archetypeDefinition.getArtifactId(),
-            archetypeDefinition.getVersion(),
-            localRepository,
-            repositories
-        )
-            )
+        if ( !archetypeArtifactManager.exists( archetypeDefinition, localRepository, repositories ) )
         {
             throw new UnknownArchetype(
                 "The desired archetype does not exist (" + archetypeDefinition.getGroupId() + ":"

Modified: maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeSelector.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeSelector.java?rev=582450&r1=582449&r2=582450&view=diff
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeSelector.java (original)
+++ maven/sandbox/trunk/archetypeng/archetypeng-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeSelector.java Fri Oct  5 21:29:03 2007
@@ -106,41 +106,49 @@
             {
                 List archetypes = new ArrayList();
 
-                try
-                {
-                    File archetypeCatalogPropertiesFile = new File( System.getProperty( "user.home" ), ".m2/archetype-catalog.properties" );
+                File archetypeCatalogPropertiesFile = new File( System.getProperty( "user.home" ), ".m2/archetype-catalog.properties" );
 
-                    if ( archetypeCatalogPropertiesFile.exists() )
-                    {
-                        Properties archetypeCatalogProperties = PropertyUtils.loadProperties( archetypeCatalogPropertiesFile );
+                if ( archetypeCatalogPropertiesFile.exists() )
+                {
+                    Properties archetypeCatalogProperties = PropertyUtils.loadProperties( archetypeCatalogPropertiesFile );
 
-                        getLogger().debug("Using catalogs " + archetypeCatalogProperties);
+                    getLogger().debug( "Using catalogs " + archetypeCatalogProperties );
 
-                        String[] sources = StringUtils.split( archetypeCatalogProperties.getProperty( "sources" ), "," );
+                    String[] sources = StringUtils.split( archetypeCatalogProperties.getProperty( "sources" ), "," );
 
-                        for ( int i = 0; i < sources.length; i++ )
-                        {
-                            String sourceRoleHint = sources[i];
+                    for ( int i = 0; i < sources.length; i++ )
+                    {
+                        String sourceRoleHint = sources[i];
 
-                            getLogger().debug("Reading catalog "+sourceRoleHint);
+                        getLogger().debug( "Reading catalog " + sourceRoleHint );
 
+                        try
+                        {
                             ArchetypeDataSource source = (ArchetypeDataSource) archetypeSources.get( sourceRoleHint );
 
                             archetypes.addAll( source.getArchetypes( getArchetypeSourceProperties( sourceRoleHint, archetypeCatalogProperties ) ) );
                         }
+                        catch ( ArchetypeDataSourceException e )
+                        {
+                            getLogger().warn( "Unable to get archetypes from " + sourceRoleHint + " source. [" + e.getMessage() + "]" );
+                        }
                     }
-                    else
-                    {
-                        getLogger().debug("Using wiki catalog");
+                }
 
+                if ( archetypes.size() == 0 )
+                {
+                    getLogger().debug( "Using wiki catalog" );
+
+                    try
+                    {
                         ArchetypeDataSource source = (ArchetypeDataSource) archetypeSources.get( "wiki" );
 
                         archetypes.addAll( source.getArchetypes( new Properties() ) );
                     }
-                }
-                catch ( ArchetypeDataSourceException e )
-                {
-                    throw new ArchetypeSelectionFailure( "Error loading archetypes from data source(s).", e );
+                    catch ( ArchetypeDataSourceException e )
+                    {
+                        getLogger().warn( "Unable to get archetypes from default wiki  source. [" + e.getMessage() + "]" );
+                    }
                 }
 
                 if ( archetypes.size() > 0 )
@@ -164,20 +172,21 @@
             }
         }
 
-        // Whether we are in batch or interactive mode we must take the repository from the definition
-        // and put it into the list of repositories that we will search.
+        // Make sure the groupId and artifactId are valid, the version may just default to
+        // the latest release.
+
+        if ( !archetypeDefinition.isPartiallyDefined() )
+        {
+            throw new ArchetypeSelectionFailure( "No valid archetypes could be found to choose." );
+        }
 
         repositories.add(
             archetypeRegistryManager.createRepository( archetypeDefinition.getRepository(), archetypeDefinition.getArtifactId() + "-repo" ) );
 
         if ( !archetypeArtifactManager.exists(
-            archetypeDefinition.getGroupId(),
-            archetypeDefinition.getArtifactId(),
-            archetypeDefinition.getVersion(),
+            archetypeDefinition,
             localRepository,
-            repositories
-        )
-            )
+            repositories ) )
         {
             throw new UnknownArchetype(
                 "The desired archetype does not exist (" + archetypeDefinition.getGroupId() + ":"
@@ -187,17 +196,12 @@
         }
         else
         {
-//            properties is no longer needed
-//            archetypePropertiesManager.writeProperties(
-//                toProperties( archetypeDefinition ),
-//                propertyFile
-//            );
-
             return archetypeDefinition;
         }
     }
 
-    private Properties getArchetypeSourceProperties( String sourceRoleHint, Properties archetypeCatalogProperties )
+    private Properties getArchetypeSourceProperties( String sourceRoleHint,
+                                                     Properties archetypeCatalogProperties )
     {
         Properties p = new Properties();
 
@@ -216,38 +220,6 @@
         return p;
     }
 
-    public static Properties toProperties( ArchetypeDefinition ad )
-    {
-        java.util.Properties properties = new java.util.Properties ();
-
-        properties.setProperty (
-            Constants.ARCHETYPE_GROUP_ID,
-            (org.codehaus.plexus.util.StringUtils.isNotEmpty( ad.getGroupId () ) ? ad.getGroupId () : "" )
-        );
-
-        properties.setProperty (
-            Constants.ARCHETYPE_ARTIFACT_ID,
-            (org.codehaus.plexus.util.StringUtils.isNotEmpty( ad.getArtifactId () ) ? ad.getArtifactId () : "" )
-        );
-
-        properties.setProperty (
-            Constants.ARCHETYPE_VERSION,
-            (org.codehaus.plexus.util.StringUtils.isNotEmpty( ad.getVersion () ) ? ad.getVersion () : "" )
-        );
-
-        properties.setProperty (
-            Constants.ARCHETYPE_POST_GENERATION_GOALS,
-            (org.codehaus.plexus.util.StringUtils.isNotEmpty( ad.getGoals() ) ? ad.getGoals() : "" )
-        );
-
-        properties.setProperty (
-            Constants.ARCHETYPE_REPOSITORY,
-            (org.codehaus.plexus.util.StringUtils.isNotEmpty( ad.getRepository() ) ? ad.getRepository() : "" )
-        );
-
-        return properties;
-    }
-
     private Properties initialiseArchetypeId(
         String archetypeGroupId,
         String archetypeArtifactId,
@@ -258,15 +230,6 @@
         IOException
     {
         Properties properties = new Properties();
-//        propertyFile is no longer needed
-//        try
-//        {
-//            archetypePropertiesManager.readProperties( properties, propertyFile );
-//        }
-//        catch ( FileNotFoundException e )
-//        {
-//            getLogger().debug( "archetype.properties does not exist" );
-//        }
 
         if ( archetypeGroupId != null )
         {
@@ -297,7 +260,6 @@
         UnknownArchetype,
         UnknownGroup,
         IOException,
-        FileNotFoundException,
         PrompterException,
         ArchetypeSelectionFailure
     {
@@ -311,7 +273,7 @@
             null,
             null,
             request.getLocalRepository(),
-            repositories);
+            repositories );
 
         request.setArchetypeGroupId( definition.getGroupId() );
         request.setArchetypeArtifactId( definition.getArtifactId() );