[ http://jira.codehaus.org/browse/ARCHETYPE-273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=203783#action_203783 ]
Stevo Slavic commented on ARCHETYPE-273: ---------------------------------------- @Luke IMO such functionality should be part of archetype:generate mojo, because I doubt one would like to have archetype just to be resolved/installed in local repository and added in local archetype catalog without intention to use archetype in the first place. Once remote archetype is specified archetype:generate resolves it and if all OK archetype is downloaded and present in local repository, just isn't yet usable (in next archetype:generate call) from local repository because it's not listed in local archetype catalog. Configurable parameter (e.g. importArchetype) could tell archetype:generate whether, besides using archetype for generating project, archetype:generate should also add archetype to local archetype catalog. It makes little sense to me, to download remote archetype in local repository but not have it automatically listed in local archetype catalog, so this importArchetype could by default be set to true (although this would somewhat break compatibility in default behavior with previous version). If importArchetype is set to true, archetype:generate should do the importing archetype in local catalog only after successful generation of project using given archetype, and before user specified additional goals. If not already archetype:generate could be made smart, when in interactive mode and listing archetypes, it should make sure that for each archetype no more than one option for same archetype version gets listed; if it makes any difference, archetype:generate should consistently prefer local to remote copy of same archetype version. Nevertheless, IMO a separate issue should be created for this. > add goal to import remote archetype catalog into local catalog > -------------------------------------------------------------- > > Key: ARCHETYPE-273 > URL: http://jira.codehaus.org/browse/ARCHETYPE-273 > Project: Maven Archetype > Issue Type: New Feature > Components: Archetypes > Affects Versions: 2.0-alpha-4 > Reporter: Dan Allen > Attachments: > org.apache.maven.archetype.maven-archetype-ARCHETYPE-273_&_220_combo.patch > > > If I've just published a new archetype, I need to be able to provide the > developer with a command that allows them to "educate" their local catalog > about the new archetypes that area available. Currently, it's possible to > specify an archetype catalog for a single run of the generate goal: > mvn archetype:generate -DarchetypeCatalog=http://example.com/maven2 > But the catalog is transient. Those entries are not "remembered". The next > time I run the generate goal... > mvn archetype:generate > ...the archetypes in the catalog provided in the previous command are not > offered as options. > This is especially problematic when using an IDE to create a new Maven > project, because the mechanism for providing an archetype catalog differs in > each IDE. We want them to be in the local repository. Simply point, it's too > much information for the developer to have to reconcile, especially since > using an archetype is likely the developer's first exposure to your project. > It needs to be simple. > What I'm looking for is a command that I can give the developer to import the > entries from a remote archetype catalog. A discovery mechanism so to speak. > I envision the following sequence to work: > mvn archetype:import -DarchetypeCatalog=http://example.com/maven2 > mvn archetype:generate > At this point, the developer would see options for the imported archetypes. > The import goal could even download the archetype JAR files at the same time. -- 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