Use org.apache.maven.plugins:maven-archetype-plugin:1.0-alpha-7:create if you 
need the old style commands. The new version 2.0 has an issue with backwards 
compat and should be fixed shortly.

-----Original Message-----
From: Tom Cook [mailto:[EMAIL PROTECTED] 
Sent: Friday, February 15, 2008 9:42 PM
To: users@maven.apache.org
Subject: Maven ignores my archetype selection

Hi all,

I hate asking noob questions, but I have looked in the bug tracker, the FAQ,
the list archive and the doco and can't see any mention of it, so here goes:

I have downloaded maven 2.0.8 on my Ubuntu gutsy machine, unpacked it and
moved it to /usr/local/apache-maven.  I have set up my environment as
follows:

>echo $M2
/usr/local/apache-maven/bin
>echo $M2_HOME
/usr/local/apache-maven
>echo $JAVA_HOME
/usr/lib/jvm/java-1.5.0-sun
>java -version
java version "1.5.0_13"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05)
Java HotSpot(TM) Client VM (build 1.5.0_13-b05, mixed mode, sharing)
>mvn -version
/usr/lib/jvm/java-1.5.0-sun/bin/java -classpath
/usr/local/apache-maven/boot/classworlds-1.1.jar -
Dclassworlds.conf=/usr/local/apache-maven/bin/m2.conf -
Dmaven.home=/usr/local/apache-maven org.codehaus.classworlds.Launcher"-version"
Maven version: 2.0.8
Java version: 1.5.0_13
OS name: "linux" version: "2.6.22-14-generic" arch: "i386" Family: "unix"

But when I try:

>mvn archetype:create -DgroupId=com.my-package -DartifactId=my-app
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO]
------------------------------------------------------------------------
[INFO] Building Maven Default Project
[INFO]    task-segment: [archetype:create] (aggregator-style)
[INFO]
------------------------------------------------------------------------
[INFO] Preparing archetype:create
[INFO] No goals needed for project - skipping
Downloading:
http://repo1.maven.org/maven2/com/my-package/wagon-http-shared/1.0-beta-2/wagon-http-shared-1.0-beta-2.pom
Downloading:
http://repo1.maven.org/maven2/com/my-package/wagon-http-shared/1.0-beta-2/wagon-http-shared-1.0-beta-2.pom
[INFO] Setting property: classpath.resource.loader.class => '
org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
[INFO] Setting property: velocimacro.messages.on => 'false'.
[INFO] Setting property: resource.loader => 'classpath'.
[INFO] Setting property: resource.manager.logwhenfound => 'false'.
[INFO] [archetype:create]
Choose archetype:
1: internal -> appfuse-basic-jsf (AppFuse archetype for creating a web
application with Hibernate, Spring and JSF)
2: internal -> appfuse-basic-spring (AppFuse archetype for creating a web
application with Hibernate, Spring and Spring MVC)
3: internal -> appfuse-basic-struts (AppFuse archetype for creating a web
application with Hibernate, Spring and Struts 2)
4: internal -> appfuse-basic-tapestry (AppFuse archetype for creating a web
application with Hibernate, Spring and Tapestry 4)
5: internal -> appfuse-core (AppFuse archetype for creating a jar
application with Hibernate and Spring and XFire)
6: internal -> appfuse-modular-jsf (AppFuse archetype for creating a modular
application with Hibernate, Spring and JSF)
7: internal -> appfuse-modular-spring (AppFuse archetype for creating a
modular application with Hibernate, Spring and Spring MVC)
8: internal -> appfuse-modular-struts (AppFuse archetype for creating a
modular application with Hibernate, Spring and Struts 2)
9: internal -> appfuse-modular-tapestry (AppFuse archetype for creating a
modular application with Hibernate, Spring and Tapestry 4)
10: internal -> maven-archetype-j2ee-simple (A simple J2EE Java application)
11: internal -> maven-archetype-marmalade-mojo (A Maven plugin development
project using marmalade)
12: internal -> maven-archetype-mojo (A Maven Java plugin development
project)
13: internal -> maven-archetype-portlet (A simple portlet application)
14: internal -> maven-archetype-profiles ()
15: internal -> maven-archetype-quickstart ()
16: internal -> maven-archetype-site-simple (A simple site generation
project)
17: internal -> maven-archetype-site (A more complex site project)
18: internal -> maven-archetype-webapp (A simple Java web application)
19: internal -> struts2-archetype-starter (A starter Struts 2 application
with Sitemesh, DWR, and Spring)
20: internal -> struts2-archetype-blank (A minimal Struts 2 application)
21: internal -> struts2-archetype-portlet (A minimal Struts 2 application
that can be deployed as a portlet)
22: internal -> struts2-archetype-dbportlet (A starter Struts 2 portlet that
demonstrates a simple CRUD interface with db backing)
23: internal -> struts2-archetype-plugin (A Struts 2 plugin)
24: internal -> shale-archetype-blank (A blank Shale web application with
JSF)
25: internal -> maven-adf-archetype (Archetype to ease the burden of
creating a new application based with ADF)
26: internal -> data-app (A new Databinder application with sources and
resources.)
27: internal -> jini-service-archetype (Archetype for Jini service project
creation)
28: internal -> softeu-archetype-seam (JSF+Facelets+Seam Archetype)
29: internal -> softeu-archetype-seam-simple (JSF+Facelets+Seam (no
persistence) Archetype)
30: internal -> softeu-archetype-jsf (JSF+Facelets Archetype)
31: internal -> jpa-maven-archetype (JPA application)
32: internal -> spring-osgi-bundle-archetype (Spring-OSGi archetype)
33: internal -> confluence-plugin-archetype (Atlassian Confluence plugin
archetype)
34: internal -> maven-archetype-har (Hibernate Archive)
35: internal -> maven-archetype-sar (JBoss Service Archive)
36: internal -> wicket-archetype-quickstart (A simple Apache Wicket project)
Choose a number:
(1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/27/28/29/30/31/32/33/34/35/36):


Some questions:

The doco seems to imply that maven will select the default archetype,
quickstart, but it doesn't.  Why?

Why does it try to download
http://repo1.maven.org/maven2/com/my-package/wagon-http-shared/1.0-beta-2/wagon-http-shared-1.0-beta-2.pom?
That doesn't look like it makes much sense to me, but perhaps I am missing
something?

I tried specifying the archetype explicitly on the command line
(trailsframework is the thing I am actually interested in):

>mvn archetype:create
-DarchetypeGroupId=org.trailsframework-DarchetypeArtifactId=trails-archetype
-DarchetypeVersion=
1.1.1 -DgroupId=com.my-package -DartifactId=myTrailsProject
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO]
------------------------------------------------------------------------
[INFO] Building Maven Default Project
[INFO]    task-segment: [archetype:create] (aggregator-style)
[INFO]
------------------------------------------------------------------------
[INFO] Preparing archetype:create
[INFO] No goals needed for project - skipping
Downloading:
http://repo1.maven.org/maven2/com/my-package/wagon-http-shared/1.0-beta-2/wagon-http-shared-1.0-beta-2.pom
Downloading:
http://repo1.maven.org/maven2/com/my-package/wagon-http-shared/1.0-beta-2/wagon-http-shared-1.0-beta-2.pom
[INFO] Setting property: classpath.resource.loader.class => '
org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
[INFO] Setting property: velocimacro.messages.on => 'false'.
[INFO] Setting property: resource.loader => 'classpath'.
[INFO] Setting property: resource.manager.logwhenfound => 'false'.
[INFO] [archetype:create]
[WARNING] No archetype repository found.
[WARNING] Specified archetype not found.
Choose archetype:
1: internal -> appfuse-basic-jsf (AppFuse archetype for creating a web
application with Hibernate, Spring and JSF)
2: internal -> appfuse-basic-spring (AppFuse archetype for creating a web
application with Hibernate, Spring and Spring MVC)
3: internal -> appfuse-basic-struts (AppFuse archetype for creating a web
application with Hibernate, Spring and Struts 2)
4: internal -> appfuse-basic-tapestry (AppFuse archetype for creating a web
application with Hibernate, Spring and Tapestry 4)
5: internal -> appfuse-core (AppFuse archetype for creating a jar
application with Hibernate and Spring and XFire)
6: internal -> appfuse-modular-jsf (AppFuse archetype for creating a modular
application with Hibernate, Spring and JSF)
7: internal -> appfuse-modular-spring (AppFuse archetype for creating a
modular application with Hibernate, Spring and Spring MVC)
8: internal -> appfuse-modular-struts (AppFuse archetype for creating a
modular application with Hibernate, Spring and Struts 2)
9: internal -> appfuse-modular-tapestry (AppFuse archetype for creating a
modular application with Hibernate, Spring and Tapestry 4)
10: internal -> maven-archetype-j2ee-simple (A simple J2EE Java application)
11: internal -> maven-archetype-marmalade-mojo (A Maven plugin development
project using marmalade)
12: internal -> maven-archetype-mojo (A Maven Java plugin development
project)
13: internal -> maven-archetype-portlet (A simple portlet application)
14: internal -> maven-archetype-profiles ()
15: internal -> maven-archetype-quickstart ()
16: internal -> maven-archetype-site-simple (A simple site generation
project)
17: internal -> maven-archetype-site (A more complex site project)
18: internal -> maven-archetype-webapp (A simple Java web application)
19: internal -> struts2-archetype-starter (A starter Struts 2 application
with Sitemesh, DWR, and Spring)
20: internal -> struts2-archetype-blank (A minimal Struts 2 application)
21: internal -> struts2-archetype-portlet (A minimal Struts 2 application
that can be deployed as a portlet)
22: internal -> struts2-archetype-dbportlet (A starter Struts 2 portlet that
demonstrates a simple CRUD interface with db backing)
23: internal -> struts2-archetype-plugin (A Struts 2 plugin)
24: internal -> shale-archetype-blank (A blank Shale web application with
JSF)
25: internal -> maven-adf-archetype (Archetype to ease the burden of
creating a new application based with ADF)
26: internal -> data-app (A new Databinder application with sources and
resources.)
27: internal -> jini-service-archetype (Archetype for Jini service project
creation)
28: internal -> softeu-archetype-seam (JSF+Facelets+Seam Archetype)
29: internal -> softeu-archetype-seam-simple (JSF+Facelets+Seam (no
persistence) Archetype)
30: internal -> softeu-archetype-jsf (JSF+Facelets Archetype)
31: internal -> jpa-maven-archetype (JPA application)
32: internal -> spring-osgi-bundle-archetype (Spring-OSGi archetype)
33: internal -> confluence-plugin-archetype (Atlassian Confluence plugin
archetype)
34: internal -> maven-archetype-har (Hibernate Archive)
35: internal -> maven-archetype-sar (JBoss Service Archive)
36: internal -> wicket-archetype-quickstart (A simple Apache Wicket project)
Choose a number:
(1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/27/28/29/30/31/32/33/34/35/36):


It did exactly the same thing!  Why has it ignored my selection of the
archetype?  Why doesn't it try to download trails-archetype?  I can see
http://repo1.maven.org/maven2/org/trailsframework/trails-archetype/1.1.1/which
looks to match the archetype specified pretty well.

This looks a bit as though it might be related to issue MNG-3356, but I
don't have any other commons-cli installation:

>apt-cache policy libcommons-cli-java
libcommons-cli-java:
  Installed: (none)
  Candidate: 1.0-8
  Version table:
     1.0-8 0
        500 http://au.archive.ubuntu.com gutsy/universe Packages

and besides Maven looks like it has its own version built in:

>jar tf /usr/local/apache-maven/lib/maven-2.0.8-uber.jar | grep commons/cli
org/apache/commons/cli/
org/apache/commons/cli/AlreadySelectedException.class
org/apache/commons/cli/ParseException.class
org/apache/commons/cli/CommandLine.class
org/apache/commons/cli/Option.class
org/apache/commons/cli/CommandLineParser.class
org/apache/commons/cli/Options.class
org/apache/commons/cli/OptionGroup.class
org/apache/commons/cli/Parser.class
org/apache/commons/cli/MissingOptionException.class
org/apache/commons/cli/GnuParser.class
org/apache/commons/cli/HelpFormatter$StringBufferComparator.class
org/apache/commons/cli/HelpFormatter$1.class
org/apache/commons/cli/HelpFormatter.class
org/apache/commons/cli/MissingArgumentException.class
org/apache/commons/cli/PatternOptionBuilder.class
org/apache/commons/cli/PosixParser.class
org/apache/commons/cli/TypeHandler.class
org/apache/commons/cli/UnrecognizedOptionException.class
org/apache/commons/cli/OptionBuilder.class
org/apache/commons/cli/BasicParser.class

What am I doing wrong???

Tom

Reply via email to