Você está na página 1de 2

Introduction to Archetypes

What is Archetype?
In short, Archetype is a Maven project templating toolkit. An archetype is defin
ed as an original pattern or model from which all other things of the same kind
are made. The name fits as we are trying to provide a system that provides a con
sistent means of generating Maven projects. Archetype will help authors create M
aven project templates for users, and provides users with the means to generate
parameterized versions of those project templates.
Using archetypes provides a great way to enable developers quickly in a way cons
istent with best practices employed by your project or organization. Within the
Maven project, we use archetypes to try and get our users up and running as quic
kly as possible by providing a sample project that demonstrates many of the feat
ures of Maven, while introducing new users to the best practices employed by Mav
en. In a matter of seconds, a new user can have a working Maven project to use a
s a jumping board for investigating more of the features in Maven. We have also
tried to make the Archetype mechanism additive, and by that we mean allowing por
tions of a project to be captured in an archetype so that pieces or aspects of a
project can be added to existing projects. A good example of this is the Maven
site archetype. If, for example, you have used the quick start archetype to gene
rate a working project, you can then quickly create a site for that project by u
sing the site archetype within that existing project. You can do anything like t
his with archetypes.
You may want to standardize J2EE development within your organization, so you ma
y want to provide archetypes for EJBs, or WARs, or for your web services. Once t
hese archetypes are created and deployed in your organization's repository, they
are available for use by all developers within your organization.
Using an Archetype
To create a new project based on an Archetype, you need to call mvn archetype:ge
nerate goal, like the following:
mvn archetype:generate
Please refer to Archetype Plugin page.
Provided Archetypes
Maven provides several Archetype artifacts:
Archetype ArtifactIds Description
maven-archetype-archetype
An archetype to generate a sample archetype proj
ect.
maven-archetype-j2ee-simple
An archetype to generate a simplifed sample J2EE
application.
maven-archetype-mojo
An archetype to generate a sample a sample Maven plugin.
maven-archetype-plugin An archetype to generate a sample Maven plugin.
maven-archetype-plugin-site
An archetype to generate a sample Maven plugin s
ite.
maven-archetype-portlet An archetype to generate a sample JSR-268 Portlet.
maven-archetype-quickstart
An archetype to generate a sample Maven project.
maven-archetype-simple An archetype to generate a simple Maven project.
maven-archetype-site
An archetype to generate a sample Maven site which demon
strates some of the supported document types like APT, XDoc, and FML and demonst
rates how to i18n your site.
maven-archetype-site-simple
An archetype to generate a sample Maven site.
maven-archetype-webapp An archetype to generate a sample Maven Webapp project.
For more information on these archetypes, please refer to the Maven Archetype Bu
ndles page.
What makes up an Archetype?

Archetypes are packaged up in a JAR and they consist of the archetype metadata w
hich describes the contents of archetype, and a set of Velocity templates which
make up the prototype project. If you would like to know how to make your own ar
chetypes, please refer to our Guide to creating archetypes.

Você também pode gostar