搭建脚手架的意义
在小组内,为了规范整个小组的框架。搭建一个脚手架,规范化代码层级划分。pom文件中的依赖能够统一管理。
第一步,新建一个模板,以此为蓝本。
新建一个项目模板。以此项目为基准,作为原型,能够快速进行开发。
// 整个项目的模板架构为
-- demo
-- controller
-- pom.xml
-- service
-- pom.xml (依赖对应的dao 模块)
-- dao
-- pom.xml
-- common
--pom.xml
以上是整个项目的java 的整体架构,其中controller、service、dao、common 是以整个model的形式。(即多模块组成)
第二步,在对应的 控制台中输入 archetype 相关的命令语句
mvn archetype:create-from-project
第三步,执行完这句命令后,会在对应的target 目录下生成一些文件。
// 具体的文件路径
-- target
-- generated-sources
-- archetype
-- src (这里面主要是放的我们需要用的模型文件)
-- ...(省略n个目录)
-- archetype-metadata.xml(即我们需要编辑文件,存放的是创建文件的语句)
-- target
-- pom.xml
资料:有关 archetype-metadata 里面具体的内容需要
官网网址
第四步,修改自定义的文件名
资料:这里本文就不再写对应的截图了,可查看以下相关资料看具体的截图
手写Maven的archetype项目脚手架
点击查看上面链接的相关资料,可进行配置,自定义文件名配置脚手架。
注意的是:自定义文件名时 rootArtifactId 是 两个下划线
在对应的archetype文件下执行
mvn install
这样子会在本地的私服中,存在一份对应的文件
ps: 博主在进行配置时,按照对应的配置没有配置成功,发现有对应的BUG提示:
Unable to create project from archetype Error merging velocity templates
当时查找了很多网址,都没有解决成功。最终找到了另外一篇博文,解决了。
如何使用从现有项目生成的Maven原型创建多模块项目
BUG 出现的问题解析:
// 1. 在对应的文件夹的名字是: __rootArtifactId__-controller
// 2. 但是在 archetype-metadata.xml 中创建的语句
<module id="${rootArtifactId}-controller" dir="${rootArtifactId}-controller" name="${rootArtifactId}-controller" />
// 3. 在执行 mvn install 中报错,不能匹配模板中的pom.xml
// 4. 解决办法:
<module id="${rootArtifactId}-controller" dir="__rootArtifactId__-controller" name="${rootArtifactId}-controller" />
第五步,新建项目
按照第四步中,手写Maven的archetype项目脚手架 执行相应的命令即可。