An archetype is a descriptor and a set of templates. There is two kind of archetypes: complete and partial.
A complete archetype represents a Maven 2 project with complete features. Eg. a class library, a desktop application, a web application.
A partial archetype represents an added feature to an existing Maven 2 project. Eg. using modello, using jetty.
The archetype is packaged in a jar file.
Archetypes can be created using the creation mecanism or can be handcrafted.
The archetype descriptor is an xml file defining:
The templates are velocity template files. They are used to generate the sources of the project.