多平台统一管理软件接口,如何实现多平台统一管理软件接口
338
2022-08-20
IDEA自定义Maven archetype的方法步骤
目录为什么要自定义archetypeArchetypemaven项目的组成创建自己的骨架结构创建maven工程骨架创建骨架安装使用自己创建的自定义骨架添加骨架
为什么要自定义archetype
在创建Maven的项目时我们发现了一个很不方便的问题,就是每次创建Maven的工程的时候,都需要选择一个骨架,但是每个骨架都需要删除一部分东西才行,在平时开发中,如果是分布式项目,有可能会频繁创建子项目,每次都要删除不要的文件然后拷贝我们要的文件,例如弹簧配置,web.xml中配置等。这样做不仅会浪费大量时间,拷贝和删除文件也容易导致错误的发生,比如漏拷某文件。
Archetype maven 项目的组成
一个典型的Archetype Maven项目主要包括如下几个部分:
pom.xml:Archetype自身的POM。src/main/resources/archetype-resources/pom.xml:基于该Archetype生成项目的POM原型。src/main/resources/META-INF/maven/archetype-metadata.xml:Archetype的描述符文件。src/main/resources/archetype-resources/**:其他需要包含在Archetype中的内容。
创建自己的骨架结构
要创建Maven的模板,首先你要创建一个Maven的项目,然后再以这个项目作为模板。
创建maven工程
首先创建一个Maven的工程,名字叫maven-template-java-simple
选择骨架
骨架创建
在maven-template-java-simple根目录执行
mvn archetype:create-from-project
报错解决
mvn archetype:create-from-project报错The specified usqxDzVhXjsrer settings file does not exist
settings.xml文件可能存在两个位置:
Maven安装:${maven.home}/conf/settings.xml用户安装:${user.home}/.m2/settings.xml
前一个settings.xml也称为全局设置,后者的settings.xml称为用户设置。如果两个文件都存在,它们的内容将被合并,用户特定的settings.xml看作是主要的。如果从头创建用户特定的设置,最简单的方法是将Maven安装中的全局设置复制到${user.home}/.m2目录。Maven的默认settings.xml是一个包含注释和示例的模板,因此可以快速调整以满足需求。
自定义 archetype 模板时,运行mvn archetype:create-from-project时报错:The specified user settings file does not exist: C:\Users\modao\.m2\settings,原因是用户配置文件不存在,把全局配置文件复制了一份过去就解决了。
执行完毕之后,会出现一个编译之后新的maven工程(target文件夹),如下图:
骨架安装
安装对应骨架项目
先进入骨架项目的pom文件目录:
cd target/generated-sources/archetype
执行安装:
mvn clean install
我们的骨架项目坐标如下:
至此,骨架项目安装成功。
使用自己创建的自定义骨架
创建新的Maven工程,选择自定义骨架
添加骨架
创建新的maven工程,选择Add Archetype,填写刚才添加的骨架工程坐标,点击OK,这是会生成一个新的骨架选项。
groupId com.terwergreen
artifactId maven-template-java-simple-archetype
version 1.0.0
选中新创建的骨架,点击下一步创建新的Maven的项目如下,这是新建的测试项目:
以后再创建类似的Maven的项目时,就可以快速新建的Maven项目而不用改来改去了。是不是很方便呢?
PS:删除自定义archetype
cd /Users/terwer/Library/Caches/JetBrains/IntelliJIdea2021.3/Maven/Indices
然后编辑 UserArchetypes.xml 文件即可。注意:修改文件之后需要重启IDEA。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~