构建工具Maven的基本使用
基于Windows机器和IDEA开发工具
maven介绍:
Maven 是一款流行的项目管理和构建自动化工具,尤其在 Java 开发领域被广泛应用。它遵循约定优于配置的原则,提供了一套标准化的构建流程、依赖管理和项目信息管理机制,极大地简化了软件项目的构建、测试、打包、部署等工作。
Maven下载和配置
- 下载:访问 Maven 官方网站 下载最新稳定版本的安装包。
解压:将下载的
.zip
或.tar.gz
文件解压到指定目录设置环境变量:
- 添加系统环境变量
M2_HOME
,指向 Maven 解压后的目录。 - 在系统环境变量
Path
中加入%M2_HOME%\bin
,使得可以在命令行直接运行mvn
命令。
- 添加系统环境变量
- 验证安装:在命令行中输入
mvn -v
,如果显示 Maven 的版本信息,说明安装成功。
创建 Maven 项目
- 在IntelliJ IDEA 等集成开发环境中,使用内置的 Maven 项目创建向导,填写项目信息并选择 Archetype。
Maven 项目的pom.xml
pom.xml
是 Maven 项目的核心配置文件,主要包括以下内容:
- 基本信息:
groupId
(组织标识)、artifactId
(项目唯一标识)、version
(项目版本)。 - 依赖管理:声明项目所需的依赖,包括
groupId
、artifactId
和version
。 - 构建配置:设置构建过程中的插件、构建目标、资源过滤规则等。
- 插件管理:集中定义插件的版本,避免在各个插件声明中重复。
- 构建 Profiles:为不同的构建环境(如开发、测试、生产)定义特定配置。
一个pom.xml
大概是这个样子:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>project</artifactId>
<version>1.0-SNAPSHOT</version>
<!-- 依赖项 -->
<dependencies>
<dependency>
<groupId>...</groupId>
<artifactId>...</artifactId>
<version>...</version>
</dependency>
<!-- 更多依赖 -->
</dependencies>
<!-- 构建配置、插件等 -->
<!-- ... -->
</project>
使用pom.xml管理项目依赖
添加依赖:在
<dependencies>
标签内添加<dependency>
标签,指定依赖的groupId
、artifactId
和version
。依赖范围:通过
scope
属性控制依赖在编译、测试、运行时的可见性,如compile
、test
、runtime
、provided
等。依赖调解:Maven 自动处理依赖传递和版本冲突。可以使用
<dependencyManagement>
标签集中管理版本。
maven常用插件
在maven中常用插件有以下几个:
maven-compiler-plugin
:编译源代码,设置编译选项(如源码、目标码版本)。maven-surefire-plugin
:运行单元测试。maven-jar-plugin
:创建 JAR 包。maven-war-plugin
:创建 WAR 包。maven-source-plugin
:生成源码包。maven-javadoc-plugin
:生成 Java 文档。在pom.xml文件中添加插件:
在
<build><plugins>
标签内添加<plugin>
标签,配置插件 ID、版本和目标(goal)。
maven常用命令:
清理:
mvn clean
删除target
目录下的编译结果、打包产物等。编译:
mvn compile
编译源代码,生成.class
文件。测试:
mvn test
编译并运行测试用例(如 JUnit、TestNG 等)。mvn surefire-report:report
生成测试报告。
打包:
mvn package
编译、测试并生成最终打包文件(如.jar
、.war
、.ear
等)。
安装:
mvn install
将打包后的工件安装到本地仓库,供其他项目依赖。部署:(通常在 CI/CD 流程中)
mvn deploy
将工件发布到远程仓库。
在IEAD中打开maven选项卡,可以选择后右键执行以上命令: