2025年maven-archetype多模块骨架创建以及使用

maven-archetype多模块骨架创建以及使用一 背景 最近部门的项目进行多模块拆分 一个 maven 模块里包含多个 maven 子模块 为了方便创建多模块 部门年轻的架构师 我很佩服他 用 maven archetype 来创建多模块骨架 然后创建多模块就方便多了 二 创建多模块骨架 1 首先创建父模块

大家好,我是讯享网,很高兴认识大家。

一、背景

       最近部门的项目进行多模块拆分,一个maven模块里包含多个maven子模块,为了方便创建多模块,部门年轻的架构师(我很佩服他)用maven-archetype来创建多模块骨架,然后创建多模块就方便多了。

二、创建多模块骨架

1、首先创建父模块

 <groupId>com.cn.dl</groupId> <artifactId>biz-base-archetype</artifactId> <packaging>pom</packaging> <version>1.0-SNAPSHOT</version>

讯享网

2、然后创建两个子模块,这个根据自己的项目结构来创建

讯享网<modules> <module>biz-base-archetype-service</module> <module>biz-base-archetype-impl</module> </modules>

3、最后创建好的模块结构


讯享网

4、接下来根据创建的模版来生成骨架

进入当前项目的根目录,例如:cd biz-base-archetype/目录下,然后执行命了:maven archetype:create-from-project

初次需要下载很多jar包,时间稍微有点长,成功之后,可以看到下面内容

子模块的命名是父模块的命名 + 子模块的功能名,例如这里父模块是biz-base-archetype,子模块中,一个提供接口,一个提供具体实现,那么子模块最终的命名:biz-base-archetype-servicebiz-base-archetype-impl,模版里面是通过__rootArtifactId__占位符来替换自己创建的父模块的artifactId,这样最终生成的模块就是严格按照父模块的artifactId来命名。

5、生成骨架成功之后,发布到本地仓库,执行命令mvn install

进入 target/generated-sources/archetype/目录下,然后执行mvn install

最后在本地仓库就可以找到对应的模版

三、使用模版

1、添加模块

这样模版就添加成功了

2、选中biz-base-archetype-archetype,创建模块biz-task-api

一路next,不需要改动!!!

到这里使用自己创建的骨架模块创建多模块就OK了,是不是很爽!

四、可能出现的问题:

1、发现创建的多模块没有src/main/java目录,模块创建成功之后还要去创建目录,这样多麻烦,网上说在模块创建时,添加参数archetypeCatalog=internal 、archetype=Internal,貌似都不起作用,最后发现是archetype-metadata.xml里面没有申明去创建src/maven/java和src/main/resources目录!所以,在骨架模块里面创建Test.java、test.properties两个空文件

然后重新按照前面的步骤执行maven archetype:create-from-project、然后删除本地仓库中的骨架模版,再执行 mvn install

接下来再重新创建模块,就包含src/maven/java和src/main/resources这两个目录了!

 

 

小讯
上一篇 2025-03-06 09:50
下一篇 2025-02-11 18:41

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/67714.html