如何正确执行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

相关推荐

  • 江西医疗网站建设备案材料怎么准备?,需要哪些材料

    江西医疗机构建设官方网站,备案材料的规范性与完整性直接决定网站能否顺利上线,根据工信部《非经营性互联网信息服务备案管理办法》及江西省通信管理局的最新审核要求,医疗行业属于重点监管领域,备案审核通过率低于普通企业网站,医疗机构在启动网站建设前,必须优先完成备案材料的系统性准备,而非在网站开发完成后再仓促补办,以下……

    2026年8月27日
    5000
  • Windows系统卡顿怎么解决?,免费升级Win11有哪些条件?,Windows新功能你试过了吗?,电脑运行慢如何提速?,Win10停止支持怎么办?

    通用原理:cd 命令与路径格式cd 命令:全称 Change Directory,用于切换工作目录,路径格式:绝对路径:从根目录开始的完整路径(如 Windows 的 C:\Users\用户名\Desktop,macOS/Linux 的 /Users/用户名/Desktop),相对路径:基于当前目录的路径(如……

    2025年7月31日
    19300
  • A类本地专用IP地址的网络号是什么?

    A类本地专用IP地址的定义与范围在TCP/IP网络体系中,IP地址是设备在网络中的唯一标识,根据用途可分为公网IP地址和私有IP地址,私有IP地址由RFC 1918标准定义,专门用于内部网络,无需申请即可使用,且不会在公共互联网上路由,私有地址分为A、B、C三类,其中A类本地专用IP地址的范围为10.0.0.0……

    2025年11月17日
    22000
  • 如何通过开始菜单最快操作?

    点击屏幕左下角 Windows图标在搜索框中输入 cmd上方会显示”cmd.exe”程序,单击即可打开命令提示符(普通权限)如需管理员权限:右键”cmd.exe” → 选择 “以管理员身份运行”(出现盾牌图标即正确)使用运行对话框(快捷操作)同时按下键盘 Win + R 键(Win键即Windows徽标键)在弹……

    2025年6月17日
    22500
  • 安全帽图片集数据有哪些用途?

    安全帽图片集数据是工业安全领域的重要资源,涵盖了多种场景、类型和应用场景的视觉素材,为安全培训、产品研发、标准制定等提供了直观参考,这类数据通常以结构化方式组织,包含基础属性、场景信息、技术参数等多维度内容,便于用户高效检索和使用,安全帽图片集数据的核心构成安全帽图片集数据的核心要素包括图像本身及其关联的元数据……

    2025年11月23日
    17200

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信