Maven多模块项目构建

本文介绍了Maven,一个用于Java项目构建和管理的工具,重点讲解了POM、依赖管理、构建生命周期和插件机制。通过实例展示了如何在Maven环境中进行多模块项目的管理与构建,包括创建模块、配置依赖和部署等步骤。
摘要由CSDN通过智能技术生成

引言

Maven是什么?Maven是一个基于Java平台的跨平台的项目管理工具,主要用于Java项目的构建、依赖管理和项目报告生成。

它可以帮助开发人员管理项目的构建、报告和文档等各个方面。Maven通过一组标准化的目录结构和构建生命周期,简化了项目的构建和管理过程。

 Maven的核心概念

Maven的核心概念包括:

  • POM(Project Object Model):POM是Maven项目的基本工作单元,它是一个XML文件,描述了项目的元数据信息,如依赖项、构建插件、目标等。

  • 依赖管理:Maven能够自动下载项目所需的依赖库,并且能够管理这些依赖库的版本冲突。

  • 构建生命周期:Maven定义了一系列标准的构建阶段,如编译、测试、打包、部署等,开发者可以通过执行相应的Maven命令来触发这些构建阶段。

  • 插件机制:Maven的功能可以通过插件进行扩展,开发者可以编写自定义的插件来满足特定的构建需求。

Maven的应用

Maven在实际项目中有着广泛的应用,具体包括以下几个方面:

  • 项目构建:Maven可以自动化执行项目的构建过程,包括编译、测试、打包等,大大简化了项目构建的流程。

  • 依赖管理:通过Maven的依赖管理功能,开发人员能够轻松地引入和管理项目所需的各种第三方库和框架。

  • 项目报告:Maven能够生成各种项目报告,如测试报告、代码覆盖率报告等,帮助开发团队及时了解项目的健康状况。

  • 多模块项目管理:对于复杂的项目结构,Maven支持多模块项目的管理,能够统一管理各个子模块的依赖和构建。

实例

本文将以Maven多模块项目构建为例帮助大家更好地理解Maven项目。使⽤maven 提供的多模块构建的特性完成maven 环境下多个模块的项的管理与构建。

这⾥以四个模块为例来搭建项⽬,以达到通俗易懂的初衷:

模块 maven_parent —– 基模块 , 就是常说的 parent pom
模块 maven_dao —– 数据库的访问层,例如 jdbc 操作( jar
模块 maven_service —– 的业务逻辑层 ( jar
模块 maven_controller —– ⽤ 来接收请求,响应数据 ( war
一、创建 maven_parent
1.选择 File —> Settings —> Project

2.设置 GroupId ArtifactId

3. 设置项 名称及 作空间
二、创建maven_dao子模块
1. 选择项 ⽬maven_parent ,右键选择 New ,选择 Module(模块)
2. 选择 Maven 的模板(普通 Java
3 . 设置 模块的的 ArtifactId
4. 设置 Maven 的配置
三、创建maven_service模块
创建 maven_service 模块的步骤与 maven_dao 模块 致。
四、创建maven_controller模块
创建 maven_service 模块的步骤与 maven_dao 模块基本 致,只需要将第 步选择 Maven 模板设置
web 即可。(模板类型: maven-archetype-webapp
模块全部创建完毕后,效果如下:
五、 修改模块的配置
设置 JDK 版本
单元测试 JUnit 版本
删除多余的配置
六、 设置模块之间的依赖
1.在maven_dao模块下新建dao包
2.在包中创建UserDao类
2.1 在类中添加
2.2添加maven_dao的依赖
<!-- 加⼊maven_dao模块的依赖 -->
<dependency>
<groupId>com.xxxx</groupId>
<artifactId>maven_dao</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
3.1  在项 中添加 UserService 类,并添加
3.2 添加 maven_service 模块的依赖
<!-- 加⼊maven_service模块的依赖 -->
<dependency>
<groupId>com.xxxx</groupId>
<artifactId>maven_service</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>

3.3 添加Servlet的依赖

<!-- Servlet的依赖 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>

4.新建 Java 类,继承 HttpServlet 类,并重写 service⽅

5.添加Tomcat插件

<!-- 添加插件 -->
<plugins>
<!-- tomcat7插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
<configuration>
<!-- <port>8080</port> -->
<path>/web</path>
<uriEncoding>UTF-8</uriEncoding>
<server>tomcat7</server>
</configuration>
</plugin>
</plugins>

6.启动项目

运行结果:

如果启动失败,请先将 ⽬ install
注:如果 ⽬ install 失败,则先将所有 模块 install 成功后,再 install ⽗
  • 9
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值