0.约定
 原型:artchetype
 1.创建原型pom文件
 创建文件夹service-archetype,在该文件夹下创建pom.xml文件,文件内容如下:
 <?xml version="1.0" encoding="UTF-8"?>  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">   <modelVersion>4.0.0</modelVersion>    <groupId>cn.jastz</groupId><!--原型 groupId -->   <artifactId>service-archetype</artifactId><!--原型 artifactId -->   <version>1.0-SNAPSHOT</version><!--原型 version -->   <packaging>jar</packaging>  </project>  
 2.创建原型描述文件
 创建如下目录及文件:
 service-archetype |-- pom.xml `-- src     `-- main         `-- resources              -- META-INF                 `-- maven                     `--archetype.xml 
 在目录service-archetype/src/main/resources/META-INF/maven下创建archetype.xml文件,内容如下:
 <archetype xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype/1.0.0 http://maven.apache.org/xsd/archetype-1.0.0.xsd">   <id>quickstart</id>   <sources>     <source>src/main/java/App.java</source>   </sources>   <testSources>     <source>src/test/java/AppTest.java</source>   </testSources> </archetype> 
 3.创建原型相关文件及原型pom文件
 创建如下目录结构及文件
 service-archetype |-- pom.xml `-- src     `-- main         `-- resources             |             `-- archetype-resources                 |-- pom.xml                 `-- src                     |-- main                     |   `-- java                     |       `-- App.java                     `-- test                         `-- java                             `-- AppTest.java 
 在service-archetype/src/main/resources/archetype-resources下创建pom.xml文件,该文件是原型的模板文件,具体内容如下:
 <?xml version="1.0" encoding="UTF-8"?>  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">   <modelVersion>4.0.0</modelVersion>    <groupId>${groupId}</groupId>   <artifactId>${artifactId}</artifactId>   <version>${version}</version>   <packaging>jar</packaging>    <name>${artifactId}</name>   <!-- FIXME change it to the project's website -->   <url>http://www.example.com</url>       <dependencies>         <dependency>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-starter-web</artifactId>         </dependency>         <dependency>             <groupId>org.mybatis.spring.boot</groupId>             <artifactId>mybatis-spring-boot-starter</artifactId>             <version>1.3.2</version>         </dependency>         <!--<dependency>             <groupId>org.springframework.cloud</groupId>             <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>         </dependency>-->          <dependency>             <groupId>mysql</groupId>             <artifactId>mysql-connector-java</artifactId>             <scope>runtime</scope>         </dependency>         <dependency>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-starter-test</artifactId>             <scope>test</scope>         </dependency>         <dependency>             <groupId>cn.jastz</groupId>             <artifactId>payment-entity</artifactId>             <version>${project.version}</version>         </dependency>         <dependency>             <groupId>me.jastz</groupId>             <artifactId>common-utils</artifactId>             <version>1.0-SNAPSHOT</version>         </dependency>     </dependencies>      <build>         <plugins>              <plugin>                 <groupId>org.mybatis.generator</groupId>                 <artifactId>mybatis-generator-maven-plugin</artifactId>                 <version>1.3.2</version>             </plugin>         </plugins>     </build> </project>  
 在service-archetype/src/main/resources/archetype-resources目录下创建src目录、子目录及文件,这些文件即是根据原型生成的项目所包含的文件。
 4.安装原型和运行原型插件
 运行命令安装
 mvn install 
 5. idea中设置原型
 File -> New -> Project... -> Maven -> 选中 Create from archetype -> 点击 Add Archetype... 按钮 -> 输入 原型 groupId 、原型 artifactId 、原型 version  
 6.参考
  7.源码
 service-archetype