1.  首先使用命令:
mvn archetype:create -DgroupId=com.jwu -DartifactId=jwu-archetype -DarchetypeArtifactId=maven-archetype-archetype
创建 arche type 。
该命令在当前目录创建了一个名为 jwu-archetype 的 maven 项目,具有 src 目录和 pom.xml 文件。
 
2.  然后修改 archetype descriptor 文件 archetype.xml ,在 \ jwu-archetype\src\main\resources\META-INF\maven  目录下:
 
Xml代码 
  1. <archetype>  
  2.   <id>jwu-archetype</id>  
  3.   <sources>  
  4.     <source>src/main/java/App.java</source>  
  5.   </sources>  
  6.   <resources>  
  7.     <resource>src/main/webapp/WEB-INF/web.xml</resource>  
  8.   </resources>  
  9.   <testSources>  
  10.     <source>src/test/java/AppTest.java</source>  
  11.   </testSources>  
  12. </archetype>  
 
 
这里面不能指定空的目录,只能指定单个的文件。 resources 目录会作为默认目录创建。
目录结构如下:
<none>
 
 
3.  然后再修改模板 pom.xml 文件,该文件会作为以后项目生成时的模板,所以修改如下:
 
Xml代码 
  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  2.   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  
  3.   <modelVersion>4.0.0</modelVersion>  
  4.   <groupId>${groupId}</groupId>  
  5.   <artifactId>${artifactId}</artifactId>  
  6.   <packaging>war</packaging>  
  7.   <version>${version}</version>  
  8.   <name>A custom project</name>  
  9.   <url>http://www.mycom.com</url>  
  10.   
  11.   <dependencies>  
  12.     <dependency>  
  13.       <groupId>junit</groupId>  
  14.       <artifactId>junit</artifactId>  
  15.       <version>3.8.1</version>  
  16.       <scope>test</scope>  
  17.     </dependency>  
  18.   </dependencies>  
  19.     
  20. </project>  
 
 
注意里面的粗体值(
Xml代码 
  1. <groupId>${groupId}</groupId>  
  2. <artifactId>${artifactId}</artifactId>  
  3. <version>${version}</version>  
),它们将被创建项目时指定的值代替。
 
4.  另外,还需要修改里面附带的一个测试文件: App.java 在 \src\main\resources\archetype-resources\src\main\java 目录,删除该java 文件的包声明。
 
同样需要删掉对应的 AppTest.java 文件的包声明,在 C:\yaowen\dev\playground\maven2projects \jwu-archetype\src\main\resources\archetype-resources\src\test\java 目录下。
这里为了方便,可以把要创建的 archetype 指定一个简单的版本号,默认为 1.0-SNAPSHOT 。
修改在 \jwu-archetype 目录下的 pom.xml 文件如下:
Xml代码 
  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  2.   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  
  3.   <modelVersion>4.0.0</modelVersion>  
  4.   <groupId>com.jwu</groupId>  
  5.   <artifactId>jwu-archetype</artifactId>  
  6.   <version>1.0</version>  
  7.   <name>Archetype - jwu-archetype</name>  
  8.   <url>http://maven.apache.org</url>  
  9. </project>  
 
5.  进入 \jwu-archetype 目录,执行 mvn install 命令,安装该 archetype 。安装完成之后,在该目录会产生一个 target 目录,同时在maven 的 repository 目录生成 mavenRepo\m2\com\jwu\jwu-archetype\1.0\ jwu-archetype-1.0.jar 及 jwu-archetype-1.0.pom 等文件。
 
\dev\playground\maven2projects\jwu-archetype> mvn install
  [INFO] [jar:jar]
[INFO] Building jar: C:\name\dev\playground\maven2projects\jwu-archetype\targe
t\jwu-archetype-1.0.jar
[INFO] [install:install]
[INFO] Installing C:\name\dev\playground\maven2projects\jwu-archetype\target\j
wu-archetype-1.0.jar to C:\yaoInstall\mavenRepo\m2\com\jwu\jwu-archetype\1.0\jwu
-archetype-1.0.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
 
表示安装成功。接下来就可以使用这个自定义的 archetype 了。
 
 
创建测试项目: infowu
 
\dev\playground\maven2projects\jwu-archetype> cd ..
退出 \jwu-archetype 目录,执行 mvn 命令:
\dev\playground\maven2projects\jwu-archetype> mvn archetype:create    -DgroupId=com.jwu.info -DartifactId=infowu -Dpackage=com.jwu.info.infowu -Dversion=1.0-SNAPSHOT - DarchetypeGroupId =com.jwu - DarchetypeArtifactId =jwu-archetype - DarchetypeVersion =1.0
生成的目录结构如下:
<none>
 
测试一下生成的项目: \dev\playground\maven2projects\infowu> mvn test
 
生成 eclipse 项目:
\dev\playground\maven2projects\infowu> mvn eclipse:eclipse -Dwtpversion=2.0
这样就可以导入到 eclipse IDE 中进行进一步开发了。