前言:
每次创建一个简单的项目,然后在像里面添加一些东西,难免有些麻烦,项目的骨架每次都是大同小异,那么 maven 刚好可以提供模板可以每次对这个模板进行简单的修改,就能实现公共项目的构建了。网上有很多博客提供了方案,但是我也跟着做了,大多是写的模模糊糊,或者这个抄袭那个,最终出来的还不是想要的结果。对初学者不太友好。那么如何构建这个 maven 模板呢?提供以下两种方案。
方案一
通过 maven 创建一个项目
执行 mvn 命令
mvn archetype:generate -DgroupId=com.congitationsoft -DartifactId=maven-common-test1 -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
(亦可以通过编译器直接创建,没有影响,个人习惯)
生成项目如上图。
通过编译器打开项目
(亦可不用编译器打开,修改目录结构)
构建所需项目
(因演示需要,仅做简单尝试)
对项目添加 resources/static 和 resources/template 目录并添加一个 demo.js 和 demo.html 文件,并且 pom 中的 junit 版本有 3.8.1 更换为 4.12。
对项目进行本地 maven 库安装
进入到项目目录:
执行以下命令:
1. mvn clean
2. mvn archetype:create-from-project
3. cd target/generated-sources/archetype/
4. mvn install
5. mvn archetype:crawl
6. mvn archetype:update-local-catalog
7. cd ../../../../
8. mvn archetype:generate
这时会得到如图所示的结果:
选择 13 就会生成刚刚创建的自定义的 maven 脚手架。
结果
通过编译器打开可以看到所有新构建的内容已经存在。
方案二(源码:GitHub 地址)
执行 mvn 命令
mvn archetype:generate -DgroupId=com.congitationsoft -DartifactId=maven-common-springboot -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
执行命令 mvn clean compile 和 mvn clean test-compile 对 main 目录和 test 目录中的内容进行编译,否则这里会报找不到主类的错误。
然后将项目导入到 idea 编译器中,并添加一些目录内容,
参照:自定义 Maven SpringBoot Web 项目骨架
添加到本地 maven 库
在项目根路径下执行:
1. mvn clean install
2. mvn archetype:crawl
3. mvn archetype:update-local-catalog
4. mvn archetype:generate
结语
如果有特别的需要,建议查看官方文档。如果有问题,请在留言区留言。