maven基础
mave官网,Maven是一个项目管理和构建自动化工具,主要服务于基于Java的软件项目。是我们WEB开发过程中必不可少的工具。
在 macOS 上安装 Maven
方法1:使用 Homebrew 安装
Homebrew
是 macOS 的一个包管理器,可以方便地安装许多开源软件。使用 Homebrew 安装 Maven 非常简单。
-
首先,你需要安装 Homebrew。如果你还没有安装,可以通过在终端中运行以下命令来安装:
sh/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-
安装完成后,通过以下命令安装 Maven:
shbrew install maven
-
安装完成后,你可以通过运行
mvn -v
来验证 Maven 是否正确安装并查看其版本。
方法2:从 Apache Maven 官网下载并安装
-
访问 Apache Maven 官网 下载 Maven 的最新版本。
-
下载后,解压下载的文件。例如,如果你下载的是
apache-maven-3.8.1-bin.tar.gz
,可以使用以下命令解压:shtar -xvzf apache-maven-3.8.1-bin.tar.gz
-
将解压后的文件夹移动到
/usr/local
(或其他你想要放置的地方),例如:shsudo mv apache-maven-3.8.1 /usr/local/maven
-
配置环境变量。打开或创建
~/.bash_profile
文件,并添加以下行:vimexport MAVEN_HOME=/usr/local/maven export PATH=$PATH:$MAVEN_HOME/bin
在Windows上安装Maven
- 下载
Maven
首先,你需要从Apache Maven
的官方网站下载Maven的安装包。
访问 Apache Maven
官网。
选择合适的Maven
版本下载。通常选择最新的稳定版本即可。
下载与你的操作系统(Windows)
兼容的zip
包。
- 解压
Maven
下载完成后,解压你下载的zip文件到一个你选择的目录。例如,你可以解压到C:\Program Files\Apache\Maven
- 设置环境变量
为了在命令行中能够直接使用Maven
命令,你需要设置几个环境变量:
M2_HOME
:指向你的Maven
安装目录。例如,C:\Program Files\Apache\Maven\apache-maven-<version>
。
PATH
:添加Maven
的bin
目录到你的系统PATH
中。例如,如果你的Maven
安装在C:\Program Files\Apache\Maven\apache-maven-<version>
,则将C:\Program Files\Apache\Maven\apache-maven-<version>\bin
添加到PATH
中。
设置环境变量步骤:
右键点击"我的电脑"或"此电脑",选择"属性"。点击"高级系统设置"。在系统属性窗口中,点击"环境变量"。在"系统变量"区域,点击"新建",变量名填写M2_HOME
,变量值填写你的Maven
安装路径,例如C:\Program Files\Apache\Maven\apache-maven-<version>
在"系统变量"区域找到Path
变量并编辑,添加;%M2_HOME%\bin
到变量值的末尾。
点击确定保存设置。
- 验证
Maven
安装
打开命令提示符(cmd
)或PowerShell
,输入以下命令来验证Maven
是否正确安装:
sh
mvn -v
如果正确安装,你将看到Maven
的版本信息输出。
- 配置
Maven
(可选)
虽然不是安装的一部分,但配置settings.xml
文件可以让你更方便地使用Maven
。这个文件通常位于M2_HOME/conf
目录下。你可以根据需要编辑这个文件来配置代理、镜像仓库等。
例如,编辑conf
目录下的settings.xml
文件,可以设置本地仓库的位置:
xml
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>C:/path/to/your/local/repo</localRepository>
</settings>
完成以上步骤后,你就可以开始使用Maven来构建和管理你的Java项目了。
Maven 是 Java 项目中广泛使用的构建工具,以下是其常用命令
一、生命周期命令
Maven 的构建过程基于生命周期(clean
, default
, site
),常用阶段命令:
命令 | 说明 |
---|---|
mvn clean |
清理项目,删除 target 目录 |
mvn validate |
验证项目配置是否正确 |
mvn compile |
编译项目源代码(输出到 target/classes ) |
mvn test |
运行单元测试(编译测试代码并执行) |
mvn package |
打包项目(生成 JAR/WAR 等文件到 target 目录) |
mvn verify |
运行集成测试并验证打包结果 |
mvn install |
将构建的包安装到本地仓库(默认路径:~/.m2/repository ) |
mvn deploy |
将构建的包部署到远程仓库(需配置 distributionManagement ) |
mvn site |
生成项目文档站点(输出到 target/site ) |
二、依赖管理命令
命令 | 说明 |
---|---|
mvn dependency:tree |
显示项目的依赖树(用于排查依赖冲突) |
mvn dependency:analyze |
分析依赖问题(如未声明的依赖或未使用的依赖) |
mvn dependency:purge-local-repository |
清除本地仓库中指定依赖的缓存(需配合参数) |
三、插件相关命令
命令 | 说明 |
---|---|
mvn help:effective-pom |
显示合并所有父 POM 后的最终有效 POM |
mvn help:describe -Dplugin=插件名 |
查看插件信息(如 mvn help:describe -Dplugin=compiler ) |
mvn archetype:generate |
基于 Maven 原型创建新项目 |
四、常用参数
参数或选项 | 说明 |
---|---|
-DskipTests |
跳过测试(编译但不执行) |
-Dmaven.test.skip=true |
完全跳过测试(不编译也不执行) |
-Pprofile-id |
激活指定的 Profile(如 -Pprod 激活生产环境配置) |
-U |
强制更新远程仓库的快照依赖(-U = --update-snapshots ) |
-pl module-name |
构建指定模块(如 mvn -pl module1 install ) |
-am |
同时构建依赖的模块(与 -pl 配合使用) |
五、组合命令示例
bash
# 清理并重新打包(跳过测试)
mvn clean package -DskipTests
# 安装指定模块及其依赖
mvn -pl module1 -am install
# 生成依赖树并保存到文件
mvn dependency:tree > dependency-tree.txt
# 更新快照依赖并部署到远程仓库
mvn deploy -U
六、高级用法
-
运行单个测试类:
bashmvn test -Dtest=ClassName
-
运行单个测试方法:
bashmvn test -Dtest=ClassName#methodName
-
生成可执行 JAR:
- 需配置
maven-shade-plugin
或spring-boot-maven-plugin
,然后运行mvn package
。
- 需配置
掌握这些命令能显著提升使用 Maven 的效率。建议结合项目的 pom.xml
配置灵活使用!
IDE 整合 Maven 创建项目
将 mvn 添加到系统环境变量里
先试用
sh
which mvn
这个命令会返回mvn
命令的完整路径 如:/opt/homebrew/bin/mvn
或者试用 mvn -v
查看版本信息
sh
vim ~/.bash_profile
操作vim 按i插入 插入完毕 esc退出 wq保存退出
vim
export M2_HOME=/opt/homebrew/bin/mvn
export PATH=$PATH:$M2_HOME/bin
sh
source ~/.bash_profile
注:Mac 系统环境变量配置文件支持多个,这里仅以 ~/.bash_profile 为例。 添加完成之后,可以手动执行命令
配置阿里云镜像 配置 Maven 私服仓库 -> 中央仓库
xml
<!-- 配置阿里云镜像来替代Maven中央仓库 -->
<mirror>
<id>nexus-aliyah</id>
<mirrorOf>central</mirrorOf>
<name>阿里云中央仓库镜像</name>
<url>https://maven.aliyun.com/repository/central</url>
</mirror>
配置前 默认是这个
xml
/Users/lhl/.m2/settings.xml
/Users/lhl/.m2/repository
首先配置 新建
repository
文件夹(Maven 本地仓库用于缓存已下载(远程)的 Jar 及相关文件,默认目录为用户主目录(~/.m2/[repository]),可以配置为其它目录比如下图)注意版本
xml
<localRepository>/opt/homebrew/Cellar/maven/3.9.9/repository</localRepository>
这样就配置好了~