IDEA maven 自定义项目骨架archetype
2020-11-26 本文已影响0人
tree3170
[toc]
[menu]
在创建maven项目的时候,每次都要选择骨架,要重复很多操作,导入jar等,能不能把这种常用的操作做成一个项目,把这个项目做成maven仓库的jar,在IDEA中添加archetype,形成模板。
[图片上传中...(image.png-5b35fa-1606396994455-0)]
创建maven项目
![](https://img.haomeiwen.com/i8086220/f6264c3d2ed2021c.png)
![](https://img.haomeiwen.com/i8086220/47d773fa697dd78c.png)
![](https://img.haomeiwen.com/i8086220/c8f646b1284d52e8.png)
![](https://img.haomeiwen.com/i8086220/f53da023e93f2ca3.png)
在pom.xml文件中加入
<defaultGoal>compile</defaultGoal>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-archetype-plugin</artifactId>
<version>3.1.0</version>
</plugin>
</plugins>
</pluginManagement>
![](https://img.haomeiwen.com/i8086220/45e07ff9eb9f7e2c.png)
在模板里添加一些包,在包中要至少要有一个文件:
![](https://img.haomeiwen.com/i8086220/6bf605ad4cbaa2a5.png)
在IDEA的终端Terminal,
执行命令:mvn archetype:create-from-project
mvn archetype:create-from-project
![](https://img.haomeiwen.com/i8086220/633ebe1398266eb6.png)
编译成功,模板生成了。会生成一个target目录,子目录generated-sources,子目录archetype。
![](https://img.haomeiwen.com/i8086220/280913b45e887b46.png)
进入到target/generated-sources/archetype目录下:执行 mvn clean install 安装到本仓库
mvn clean install
![](https://img.haomeiwen.com/i8086220/76fc581c4f841efc.png)
安装本地maven仓库成功:
![](https://img.haomeiwen.com/i8086220/928c75f18cb83be3.png)
查看本地仓库是否真的成功:
C:\Users\laihouwen.m2\repository\archetype-catalog.xml
![](https://img.haomeiwen.com/i8086220/98a1bdee9ed6729f.png)
已成功:
![](https://img.haomeiwen.com/i8086220/238e50d3a967f3d6.png)
<archetype>
<groupId>com.learn.lai</groupId>
<artifactId>base-maven-archetype</artifactId>
<version>1.0</version>
<description>base-maven-archetype</description>
</archetype>
在IDEA中加入archetype模板
![](https://img.haomeiwen.com/i8086220/1ea22841c469cf84.png)
![](https://img.haomeiwen.com/i8086220/a32d23c0b8a31ca0.png)
新建一个项目,引用base-maven模板:
![](https://img.haomeiwen.com/i8086220/6f0b71364aee1f89.png)
![](https://img.haomeiwen.com/i8086220/820eb6742a8193e9.png)
![](https://img.haomeiwen.com/i8086220/2395c2447c38e37a.png)
![](https://img.haomeiwen.com/i8086220/ca55653fdb4eb098.png)
引入的archetype模板成功:
![](https://img.haomeiwen.com/i8086220/c3d613e288afe122.png)
删除自定义的archetype模板
找到本机的UserArchetypes.xml文件,C:\Users\laihouwen.IntelliJIdea2019.2\system\Maven\Indices
![](https://img.haomeiwen.com/i8086220/a9cc65da36572afa.png)
![](https://img.haomeiwen.com/i8086220/7496497c55176d8a.png)
删除你想删除的archetype模板:
<archetype groupId="com.learn.lai" artifactId="base-maven-archetype" version="1.0" />
找到本机的archetype-catalog.xml文件
C:\Users\laihouwen.m2\repository/archetype-catalog.xml ,
![](https://img.haomeiwen.com/i8086220/6aed9f017aaeb497.png)
![](https://img.haomeiwen.com/i8086220/662d4a95f4f16ab5.png)
删除你想删除的archetype模板:
<archetype>
<groupId>com.learn.lai</groupId>
<artifactId>base-maven-archetype</artifactId>
<version>1.0</version>
<description>base-maven-archetype</description>
</archetype>
重新启动IDEA
![](https://img.haomeiwen.com/i8086220/35ead19b68513f0b.png)
最后最好可以进本地的maven仓库中,将这个无效的jar代码删除。
![](https://img.haomeiwen.com/i8086220/6891ead82f4e6233.png)