You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Martin Gainty (JIRA)" <ji...@codehaus.org> on 2009/04/04 02:22:14 UTC
[jira] Commented: (ARCHETYPE-236) Maven archetype:create fails with
spurious error
[ http://jira.codehaus.org/browse/ARCHETYPE-236?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=171992#action_171992 ]
Martin Gainty commented on ARCHETYPE-236:
-----------------------------------------
Howard
applicable attribues from org.apache.maven.archetype.common.Constants.java:
String ARCHETYPE_DESCRIPTOR = "META-INF/maven/archetype-metadata.xml";
String OLD_ARCHETYPE_DESCRIPTOR = "META-INF/maven/archetype.xml";
org.apache.maven.archetype.old.OldArchetype:
public void createArchetype( String archetypeGroupId,
String archetypeArtifactId,
String archetypeVersion,
ArtifactRepository archetypeRepository,
ArtifactRepository localRepository,
List remoteRepositories,
Map parameters )
throws ArchetypeNotFoundException, ArchetypeDescriptorException, ArchetypeTemplateProcessingException
.......
try
{
URL[] urls = new URL[1];
urls[0] = archetype.toURL();
archetypeJarLoader = new URLClassLoader( urls );
//First locate META-INF/maven/archetype-metadata.xml (First)
InputStream is = getStream( ARCHETYPE_DESCRIPTOR, archetypeJarLoader );
if ( is == null )
{
//only if you dont find META-INF/maven/archetype-metadata.xml then look for
//META-INF/maven/archetype.xml
is = getStream( ARCHETYPE_OLD_DESCRIPTOR, archetypeJarLoader );
if ( is == null )
{
throw new ArchetypeDescriptorException(
"The " + ARCHETYPE_DESCRIPTOR + " descriptor cannot be found." );
}
}
descriptor = builder.build( new InputStreamReader( is ) );
}
catch ( IOException e )
{
throw new ArchetypeDescriptorException( "Error reading the " + ARCHETYPE_DESCRIPTOR + " descriptor.", e );
}
catch ( XmlPullParserException e )
{
throw new ArchetypeDescriptorException( "Error reading the " + ARCHETYPE_DESCRIPTOR + " descriptor.", e );
}
Is
META-INF/maven/archetype-metadata.xml
available
?
Martin-
> Maven archetype:create fails with spurious error
> ------------------------------------------------
>
> Key: ARCHETYPE-236
> URL: http://jira.codehaus.org/browse/ARCHETYPE-236
> Project: Maven Archetype
> Issue Type: Bug
> Components: Generator
> Reporter: Howard M. Lewis Ship
> Priority: Critical
> Attachments: maven-metadata.xml, quickstart-5.1.0.3-20090404.000306-1.jar, quickstart-5.1.0.3-20090404.000306-1.pom
>
>
> Choose archetype:
> 1: http://tapestry.formos.com/maven-snapshot-repository -> quickstart (Tapestry 5.1.0.3-SNAPSHOT Quickstart Project)
> Choose a number: (1): 1
> [DEBUG] Not found archetype org.apache.tapestry:quickstart:5.1.0.3-SNAPSHOT in cache
> [INFO] snapshot org.apache.tapestry:quickstart:5.1.0.3-SNAPSHOT: checking for updates from quickstart-repo
> [DEBUG] Skipping disabled repository central
> [DEBUG] quickstart: resolved to version 5.1.0.3-20090327.090350-1 from repository quickstart-repo
> [DEBUG] Found archetype org.apache.tapestry:quickstart:5.1.0.3-SNAPSHOT in cache: /Users/Howard/.m2/repository/org/apache/tapestry/quickstart/5.1.0.3-SNAPSHOT/quickstart-5.1.0.3-SNAPSHOT.jar
> [DEBUG] Found archetype org.apache.tapestry:quickstart:5.1.0.3-SNAPSHOT in cache: /Users/Howard/.m2/repository/org/apache/tapestry/quickstart/5.1.0.3-SNAPSHOT/quickstart-5.1.0.3-SNAPSHOT.jar
> [DEBUG] No found META-INF/maven/archetype.xml retrying with windows path
> [DEBUG] Can not load old archetype
> java.io.IOException: The META-INF/maven/archetype.xml descriptor cannot be found.
> at org.apache.maven.archetype.common.DefaultArchetypeArtifactManager.getOldArchetypeDescriptorReader(DefaultArchetypeArtifactManager.java:679)
> at org.apache.maven.archetype.common.DefaultArchetypeArtifactManager.loadOldArchetypeDescriptor(DefaultArchetypeArtifactManager.java:618)
> at org.apache.maven.archetype.common.DefaultArchetypeArtifactManager.isOldArchetype(DefaultArchetypeArtifactManager.java:582)
> at org.apache.maven.archetype.common.DefaultArchetypeArtifactManager.isOldArchetype(DefaultArchetypeArtifactManager.java:300)
> at org.apache.maven.archetype.ui.DefaultArchetypeGenerationConfigurator.configureArchetype(DefaultArchetypeGenerationConfigurator.java:150)
> at org.apache.maven.archetype.mojos.CreateProjectFromArchetypeMojo.execute(CreateProjectFromArchetypeMojo.java:182)
> at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:493)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:463)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:224)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333)
> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126)
> at org.apache.maven.cli.MavenCli.main(MavenCli.java:282)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> [DEBUG] No found META-INF/archetype.xml retrying with windows path
> [INFO] ------------------------------------------------------------------------
> [ERROR] BUILD FAILURE
> [INFO] ------------------------------------------------------------------------
> [INFO] The defined artifact is not an archetype
> [INFO] ------------------------------------------------------------------------
> [DEBUG] Trace
> org.apache.maven.BuildFailureException: The defined artifact is not an archetype
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:560)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:493)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:463)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:224)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333)
> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126)
> at org.apache.maven.cli.MavenCli.main(MavenCli.java:282)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> Caused by: org.apache.maven.plugin.MojoFailureException: The defined artifact is not an archetype
> at org.apache.maven.archetype.mojos.CreateProjectFromArchetypeMojo.execute(CreateProjectFromArchetypeMojo.java:201)
> at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447)
> at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
> ... 16 more
> Maven is failing looking for the *old* archetype.xml, rather than the new-style (compatible with archetype:generate) archetype-metadata.xml file.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira