如何正确执行Maven命令?

环境准备(先决条件)

  1. 安装Java
    Maven依赖Java环境:

    • 下载JDK 8+(Oracle官网 或 OpenJDK)

    • 配置环境变量:

      # Windows:系统属性 → 环境变量
      JAVA_HOME = C:\Program Files\Java\jdk-17
      # Linux/macOS:添加到 ~/.bashrc 或 ~/.zshrc
      export JAVA_HOME=/usr/lib/jvm/jdk-17
      export PATH=$JAVA_HOME/bin:$PATH
  2. 安装Maven

    • 下载Maven 3.6.3+(官网)

    • 配置环境变量:

      # Windows
      M2_HOME = C:\apache-maven-3.8.6
      PATH = %M2_HOME%\bin;%PATH%
      # Linux/macOS
      export M2_HOME=/opt/apache-maven-3.8.6
      export PATH=$M2_HOME/bin:$PATH
    • 验证安装:

      mvn -v  # 输出Maven及Java版本即成功

mvn 命令基础结构

mvn [选项] <生命周期阶段> [<生命周期阶段>...]
  • 选项(Options):控制Maven行为的参数(如 -D 定义属性)。
  • 生命周期阶段(Phase):Maven构建流程的步骤(如 compiletest)。

核心生命周期命令

Maven构建基于生命周期模型,常用阶段如下:
| 命令 | 作用 | 示例 |
|———————|——————————-|———————–|
| mvn clean | 删除target目录(清理构建) | mvn clean |
| mvn compile | 编译主代码 | mvn compile |
| mvn test | 运行单元测试 | mvn test |
| mvn package | 打包项目(JAR/WAR) | mvn package |
| mvn install | 安装到本地仓库 | mvn install |
| mvn deploy | 部署到远程仓库(如Nexus) | mvn deploy |
| mvn verify | 集成测试 | mvn verify |

链式执行

mvn clean package  # 先清理再打包
mvn test install   # 运行测试后安装到本地

常用选项(参数)

选项 说明 示例
-D<属性名>=<值> 定义系统属性(覆盖pom.xml配置) mvn test -DskipTests=true
-P<profile> 激活指定的构建配置(Profile) mvn install -Pprod
-e 显示详细错误信息(排障必备) mvn compile -e
-X 开启Debug模式(输出完整执行日志) mvn package -X
-U 强制更新远程仓库的依赖(避免缓存问题) mvn clean install -U
-pl 构建指定模块(多模块项目) mvn install -pl module-a
-am 同时构建依赖模块(需配合-pl mvn install -pl module-a -am

实战示例

  1. 跳过测试并打包
    mvn clean package -DskipTests
  2. 激活生产配置并部署
    mvn clean deploy -Pprod
  3. 多模块构建
    # 仅构建module-a及其依赖
    mvn install -pl module-a -am

常见问题解决

  1. 命令未找到(mvn: command not found

    • 检查PATH环境变量是否包含Maven的bin目录。
    • 重启终端或执行 source ~/.bashrc(Linux/macOS)。
  2. 依赖下载失败

    • 使用 -U 强制更新:mvn -U clean install
    • 检查网络或镜像配置(~/.m2/settings.xml)。
  3. 构建错误(如编译失败)

    • 添加 -e-X 查看详细日志:mvn compile -e
    • 确认JDK版本与pom.xml<java.version>一致。
  4. 插件执行报错

    • 更新Maven版本(兼容性问题)。
    • 检查插件配置(如maven-compiler-plugin)。

最佳实践

  1. 优先使用官方仓库:配置阿里云镜像加速(修改settings.xml):
    <mirror>
      <id>aliyun</id>
      <url>https://maven.aliyun.com/repository/public</url>
      <mirrorOf>central</mirrorOf>
    </mirror>
  2. 定期清理本地仓库
    • 删除 ~/.m2/repository 中无用依赖(节省空间)。
  3. 使用Wrapper避免环境问题
    mvn wrapper:wrapper   # 生成mvnw脚本(跨平台兼容)
    ./mvnw clean install  # 代替mvn命令

引用说明

  • Maven官方文档:Apache Maven Documentation
  • JDK安装指南:Oracle Java Documentation
  • 环境变量配置:Maven Installation Guide
  • 阿里云镜像仓库:Maven Mirror Settings
    基于Maven 3.8.6及Java 17验证,遵循Apache Maven最佳实践,建议定期查阅官方文档获取更新。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/4671.html

(0)
酷番叔酷番叔
上一篇 2025年6月16日 15:32
下一篇 2025年6月16日 16:08

相关推荐

  • 如何禁用Windows快速关机功能?

    要阻止Windows快速关机,需禁用快速启动功能: ,1. 以管理员身份运行命令提示符。 ,2. 输入命令 powercfg /h off 并回车。 ,3. 重启后系统将执行完整关机流程,取消快速关机。

    2025年7月2日
    3200
  • 命令符如何关闭MySQL服务?

    在使用MySQL数据库的过程中,有时需要通过命令符(如Windows的CMD、PowerShell或Linux/macOS的终端)关闭MySQL服务,常见于数据库维护、服务器重启或解决服务异常等情况,正确关闭MySQL服务可避免数据损坏或连接异常,本文将分操作系统详细讲解命令符关闭MySQL的多种方法,并附操作……

    2025年8月23日
    1400
  • 硬盘坏道怎么修复命令

    硬盘坏道,Windows系统可通过命令提示符执行chkdsk /f命令尝试修复

    2025年8月15日
    1400
  • mac如何打开命令行?详细操作步骤与方法解析

    在macOS系统中,命令行(也称为终端或Shell)是强大的工具,适用于系统管理、开发调试、自动化脚本执行等多种场景,macOS默认自带Terminal(终端)应用,基于Unix Shell(默认为Bash,macOS Catalina后默认为Zsh),用户无需额外安装即可通过多种方式打开命令行界面,本文将详细……

    2025年8月29日
    1200
  • 如何在按键精灵调用大漠插件?

    前期准备工作获取大漠插件从大漠插件官方网站下载正版DM.dll(当前推荐v3.1233+版本),安全提示:切勿使用来历不明的破解版,避免病毒风险及法律问题,注册插件到系统将DM.dll放入按键精灵的plugin目录(如:C:\按键精灵\plugin),以管理员身份运行CMD,执行注册命令: regsvr32……

    2025年7月28日
    2200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信