<?xml version="1.0"?> | |
<!-- | |
~ Copyright 2006 The Apache Software Foundation. | |
~ | |
~ Licensed under the Apache License, Version 2.0 (the "License"); | |
~ you may not use this file except in compliance with the License. | |
~ You may obtain a copy of the License at | |
~ | |
~ http://www.apache.org/licenses/LICENSE-2.0 | |
~ | |
~ Unless required by applicable law or agreed to in writing, software | |
~ distributed under the License is distributed on an "AS IS" BASIS, | |
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
~ See the License for the specific language governing permissions and | |
~ limitations under the License. | |
--> | |
<faqs id="FAQ" title="Frequently Asked Questions"> | |
<part id="General"> | |
<faq id="What is Archetype?"> | |
<question> | |
What is Archetype? | |
</question> | |
<answer> | |
<p>In short, Archetype is a Maven project templating toolkit. An | |
archetype is defined as <i>an original pattern or model from which all | |
other things of the same kind are made</i>. The names fits as we are | |
trying to provide a system that provides a consistent means of | |
generating Maven projects. Archetype will help authors create Maven | |
project templates for users, and provides users with the means to | |
generate parameterized versions of those project templates.</p> | |
<p>Using archetypes provides a great way to enable developers quickly in | |
a way consistent 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 quickly as possible by providing a sample | |
project that demonstrates many of the features of Maven while | |
introducing new users to the best practices employed by Maven. In a | |
matter of seconds a new user can have a working Maven project to use as | |
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 portions 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 generate a working project you can | |
then quickly create a site for that project by using the site archetype | |
within that existing project. You can do anything like this with | |
archetypes. </p> | |
<p>You may want to standardize J2EE development within your organization | |
so you may want to provide archetypes for EJBs, or WARs, or for your web | |
services. Once these archetypes are created and deployed in your | |
organization's repository they are available for use by all developers | |
within your organization.</p> | |
</answer> | |
</faq> | |
<faq id="What makes up an Archetype?"> | |
<question> | |
What makes up an Archetype? | |
</question> | |
<answer> | |
<p>Archetypes are packaged up in a JAR and they consist of the archetype | |
metadata which describes the contents of archetype and a set of | |
<a href = "http://jakarta.apache.org/velocity">Velocity </a> templates | |
which make up the prototype project. If you would like to know how to | |
make your own archetypes please refer to our <a href = | |
"http://maven.apache.org/guides/mini/guide-creating-archetypes.html"> | |
Guide to creating archetypes</a>.</p> | |
</answer> | |
</faq> | |
</part> | |
</faqs> |