Maven添加自定義archetype骨架


以webapp模板項目為例,使用的IDE為IDEA 2019

 

1.創建webapp模板項目,結構如下圖

 

 共性配置文件如applicationContext-dao.xml、applicationContext-service.xml、spring-mvc.xml、applicationContext-trans.xml、log4j.xml等可以自己額外添加到resources目錄下,作為模板

 

2.修改pom文件,加入如下內容:

<build>
        <finalName>yyj-archetype-webapp</finalName>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-archetype-plugin</artifactId>
                    <version>3.1.2</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <configuration>
                        <encoding>UTF-8</encoding>
                        <includeEmptyDirs>true</includeEmptyDirs>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

 

3.項目根目錄(pom.xml)所在目錄)執行maven命令:mvn archetype:create-from-project

執行成功如下圖:

 

 

注意沒有使用IDE自帶的Maven,可能報:[ERROR]  The specified user settings file does not exist: C:\Users\cchengyyj\.m2\settings.xml

 解決辦法:將獨立的安裝maven的setting.xml文件拷貝到C:\Users\**\.m2目錄下即可

 

4.target生成后的目錄結構

 

 5.修改archetype-metadata.xml、pom.xml

  5.1    archetype-metadata.xml配置文件告訴archetype插件,archetype-resources里面哪些文件需要包含到創建出的項目里

<?xml version="1.0" encoding="UTF-8"?>
<archetype-descriptor xsi:schemaLocation="https://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.1.0 http://maven.apache.org/xsd/archetype-descriptor-1.1.0.xsd" name="yyj-archetype-webapp"
    xmlns="https://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.1.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <fileSets>

    <fileSet filtered="true" encoding="UTF-8">
      <directory>src/main/java</directory>
      <includes>
        <include>**/*.**</include>
      </includes>
    </fileSet>

    <fileSet filtered="true" encoding="UTF-8">
      <directory>src/main/resources</directory>
      <includes>
        <include>**/*.**</include>
      </includes>
    </fileSet>

    <fileSet filtered="true" encoding="UTF-8">
      <directory>src/test/java</directory>
      <includes>
        <include>**/*.**</include>
      </includes>
    </fileSet>

    <fileSet filtered="true" encoding="UTF-8">
      <directory>src/main/webapp</directory>
      <includes>
        <include>**/*.**</include>
      </includes>
    </fileSet>

    <fileSet filtered="true" encoding="UTF-8">
      <directory>src/main/webapp/WEB-INF/lib</directory>
      <includes>
        <include>**/*.**</include>
      </includes>
    </fileSet>

    <fileSet encoding="UTF-8">
      <directory></directory>
      <includes>
        <include>yyj-archetype-webapp.iml</include>
      </includes>
    </fileSet>

  </fileSets>
</archetype-descriptor>

 

   5.2    pom.xml文件自己生成的<artifactId>和<name>元素值,不滿意,根據自己喜好更改,也可以不改;<packaging>maven-archetype</packaging>修改為<packaging>jar</packaging>

 

6.將骨架部署到本地maven倉庫
generated-sourced/archetype目錄下運行maven命令:mvn clean install

 7.執行maven命令:mvn archetype:crawl(在指定的Maven庫中查找可以的模板,並更新模板目錄),會在maven倉庫的根目錄生成archetype-catalog.xml,里面有骨架的坐標信息

 

能找到剛剛創建的骨架坐標信息,如下:

 

 

8.使用骨架

 

 生成的目錄結構如下:

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM