场景
可能需要创建很多的工程,这些工程都有一些相同的部分,不用每次都重头开始创建。可以使用mavne中的archetype。先将这些工程公共部分创建好,生成一个archetypetype。发布到仓库,后期都根据当前的骨架来创建,创建出来的工程中包含了之前骨架中包含的内容。这样能够复用。
实现步骤
创建工程
将所有公用代码都写入到工程中。编译,测试,打包,通过。执行archetype:create-from-project根据当前的工程来创建骨架
mvn archetype:create-from-project
执行代码。
命令执行完毕以后,在target中会有这样一些包。
- 删除不需要的代码
将上图中用红框标出的.idea
文件删除,这个文件夹中存放的是IntelJ中配置文件需要的内容。
- 修改配置文件
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
filtered
表示是否对文件中配置的属性进行替换。
packaged
表示骨架中定义的文件是否会被添加到对应的路径中去。
将不需要的参数给删除掉。
- 上传骨架
进入到archetype目录下,执行mvn archetype:install
命令,骨架搭建完毕。 将骨架添加到骨架列表中
执行命令mvn archetype:crawl
。
在repository文件夹中执行cat archetype-catalog.xml
,这个对象当中包含了所有的骨架的gav信息。<archetype> <groupId>org.xx.muzhe</groupId> <artifactId>web-archetype</artifactId> <version>1.0-SNAPSHOT</version> <description>web</description> </archetype>
将框架添加到Idea中
将上面填写的archetype中的gav填到其中去。
填写完成的效果,
-