登录
首页 >  文章 >  java教程

Java多模块项目搭建:Maven实战教程

时间:2025-11-12 13:39:33 421浏览 收藏

欢迎各位小伙伴来到golang学习网,相聚于此都是缘哈哈哈!今天我给大家带来《Java多模块项目搭建指南:Maven实战教程》,这篇文章主要讲到等等知识,如果你对文章相关的知识非常感兴趣或者正在自学,都可以关注我,我会持续更新相关文章!当然,有什么建议也欢迎在评论留言提出!一起学习!

父项目通过pom.xml定义modules和dependencyManagement管理子模块;子模块继承父配置并可相互依赖;目录结构清晰,构建时在根目录执行mvn命令即可自动按序编译、测试、打包所有模块。

在Java中如何使用Maven创建多模块项目

在Java中使用Maven创建多模块项目,关键在于通过父POM管理多个子模块,实现依赖统一、构建一致和结构清晰。整个项目由一个父项目和多个子模块组成,父项目不写具体代码,只负责协调各个模块。

创建父项目

首先创建一个空目录作为项目根目录,然后编写父项目的pom.xml文件:

1. 父项目的pom.xml配置:

  • packaging类型设为pom:这是多模块项目的标志。
  • 定义modules列表:列出所有子模块的目录名。
  • 统一管理依赖版本:使用dependencyManagement集中控制依赖版本。
示例pom.xml:
<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.example</groupId>
  <artifactId>parent-project</artifactId>
  <version>1.0.0</version>
  <packaging>pom</packaging>

  <modules>
    <module>module-common</module>
    <module>module-service</module>
    <module>module-web</module>
  </modules>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
        <scope>test</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
</project>

创建子模块

在父项目目录下创建子模块目录,每个子模块都有自己的pom.xml,并自动继承父项目配置。

子模块pom.xml要点:

  • 不需要指定groupId和version:会从父项目继承。
  • 可覆盖父级配置:如需要可单独设置打包方式或添加额外依赖。
  • 依赖其他模块时直接引用:只要模块在modules中声明,就可以像普通依赖一样使用。
例如module-service的pom.xml:
<project>
  <modelVersion>4.0.0</modelVersion>
  <artifactId>module-service</artifactId>
  <packaging>jar</packaging>

  <dependencies>
    <dependency>
      <groupId>com.example</groupId>
      <artifactId>module-common</artifactId>
    </dependency>
  </dependencies>
</project>

目录结构示例

最终项目结构如下:

parent-project/
├── pom.xml
├── module-common/
│   └── pom.xml
├── module-service/
│   └── pom.xml
└── module-web/
    └── pom.xml

构建与运行

在父项目根目录执行Maven命令即可统一构建所有模块:

  • mvn clean compile:编译全部模块。
  • mvn test:运行所有单元测试。
  • mvn package:打包每个模块(如jar或war)。
  • 构建顺序由模块依赖关系决定,Maven会自动处理。
基本上就这些。只要父pom正确声明modules,各子模块能相互引用,再配合dependencyManagement做版本控制,就能高效维护大型Java项目。

今天关于《Java多模块项目搭建:Maven实战教程》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>