Maven(四)常用命令大全

目录

Maven 是一个强大的构建工具,它提供了许多命令来进行项目构建、依赖管理和测试等操作。本文主要介绍一些常用的 Maven 命令。

在介绍 Maven 命令之前,需要从认知上理解 Maven 命令的构成。

Maven 命令主要分为两种:

  • mvn 命令参数:这里涵盖了 mvn 后所有以 - 开头的参数。
  • mvn 插件命令:其实我们平时使用最多的 clean、package、install 等命令都是 Maven 官方提供的插件,除此之外我们还可以字节编写插件进行扩展。

一、mvn 命令参数

mvn -v, --version 显示版本信息。

mvn -V, --show-version 显示版本信息后继续执行 Maven 其他目标。

mvn -h, --help 显示帮助信息。

mvn -e, --errors 控制 Maven 的日志级别,显示执行错误相关的消息。

mvn -X, --debug 控制 Maven 的日志级别,显示执行调试信息。

mvn -q, --quiet 控制 Maven 的日志级别,仅显示错误信息。

mvn -Pxxx 激活 id 为 xxx 的 profile(如有多个,用逗号隔开)。

mvn -Dxxx=yyy 指定 java 的全局属性。

mvn -o, --offline 运行 offline 模式,不联网更新依赖。

mvn -N, --non-recursive 尽在当前项目模块执行命令,不构建子模块。

mvn -pl, --module_name 在指定模块上执行命令。

mvn -ff, --fail-fast 遇到构建失败就直接退出。

mvn -fn, --fail-never 无论项目结果如何,构建从不失败。

mvn -fae, --fail-at-end 仅影响构建结果,允许不受影响的构建继续。

mvn -C, --strict-checksums 如果校验码不匹配的话,构建失败。

mvn -c, --lax-checksums 如果校验码不匹配的话,产生告警。

mvn -U 强制更新 SNAPSHOT 类型的插件或依赖库(否则 Maven 一天只会更新一次 SNAPSHOT 依赖)。

mvn -npu, --no-plugin-updates 对任何相关的注册插件,不进行最新检查(使用该选项使 Maven 表现出稳定的行为,该稳定行为基于本地仓库当前可用的所有插件版本)。

mvn -cpu, --check-plugin-updates 对任何相关的注册插件,强制进行最新检查(即使项目 POM 里明确规定了 Maven 插件版本,还是会强制更新)。

mvn -up, --update-plugins 与 mvn -cpu 作用相同。

mvn -B, --batch-mode 在非交互(批处理)模式下运行(该模式下,当 Maven 需要输入时,它不会停下来接收用户的输入,而是使用合理的默认值)。

mvn -f, --file <file> 强制使用备用的 POM 文件。

mvn -s, --settings <arg> 用户配置文件的备用路径。

mvn -gs, --global-settings <file> 全局配置文件的备用路径。

mvn -emp, --encrypt-master-password <password> 加密主安全密码,存储到 Maven 的 settings 文件里。

mvn -ep, --encrypt-password <password> 加密服务器密码,存储到 Maven 的 settings 文件里。

mvn -npr, --no-plugin-registry 对插件版本不适用 ~/.m2/plugin-registry.xml(插件注册表)里的配置。


二、mvn 插件命令

1.介绍

其实我们平时使用最多的 cleanpackageinstall 等命令都是 Maven 官方提供的插件,除此之外我们还可以字节编写插件进行扩展。

官方插件清单: https://maven.apache.org/plugins/index.html

这里我们主要讲解一下如何查看插件的官方文档,以及常用的插件命令。

2.查看插件的使用文档

Maven 的官方插件主要分为四类:

  • 核心插件:包括 clean、compiler、deploy、install 等。
  • 打包插件:包括 jar、war、ejb、source 等。
  • 报告插件:包括 javadoc 等。
  • 工具插件:包括 antrun、archetype、dependency、help 等。

查看 Maven 插件的官方文档,这里我们主要用到了工具插件中的 help 插件。

用法:

shell 复制代码
mvn help:describe -Dplugin=插件名

例如:我想查看 dependency 命令的使用文档:

mvn 命令:

shell 复制代码
mvn help:describe -Dplugin=dependency

执行结果:

补充: 如果之前没有使用过 help 插件,第一次执行会先进行 Download,时间,后面就会直接执行了。

3.常用的插件命令

mvn clean:清理项目目录,删除 target 目录和生成的构建文件。

mvn compile:编译源代码,并将编译后的类文件存储在 target 目录中。

mvn test-compile:编译测试代码。

mvn test:运行项目的单元测试。

mvn site:产生 site。

mvn package:打包项目,并将生成的构建文件(例如:JAR、WAR)存储在 target 目录中。

mvn install:安装项目到本地 Maven 仓库,以供其他项目使用。

mvn deploy:将项目部署到远程仓库,例如 Maven 私服。

mvn clean install:清理项目目录并执行安装操作。

mvn clean package:清理项目目录并执行打包操作。

mvn dependency:tree:显示项目的依赖树。

mvn dependency:resolve:解析项目的依赖关系,并下载缺失的依赖项。

mvn archetype:create

  • mvn archetype:create -DgroupId=packageName -DartifactId=projectName:使用 Maven 的 archetype 插件,创建一个 Maven 的普通 java 项目。

  • mvn archetype:create -DgroupId=packageName -DartifactId=projectName -DarchetypeArtifactId=maven-archetype-webapp:使用 Maven 的 archetype 插件,创建一个 Maven 的 Web 项目。

mvn archetype:generate:使用 Maven 的 archetype 插件,创建一个新的 Maven 项目结构。

mvn eclipse:eclipse:使用 Maven 的 eclipse 插件,生成 eclipse 项目。

mvn idea:idea:使用 Maven 的 idea 插件,生成 idea 项目。

mvn jar:jar:只打 jar 包。

mvn test -skipping compile -skipping test-compile:跳过源代码的编译和测试代码的编译,运行项目的单元测试。

mvn eclipse:clean:清除 eclipse 的一些系统设置。

mvn help:help:使用 Maven 的 help 插件,显示 Maven 帮助信息。

以上这些命令是 Maven 中最常用的一些命令,可以根据项目需求和具体情况来选择使用。同时,Maven 还提供了许多其他命令和插件,可以根据具体需求进行查阅和使用。你可以通过运行 mvn --help 来获取所有可用的 Maven 命令,去官网插件清单查看所有可用插件。

整理完毕,完结撒花~ 🌻

参考地址:

1.maven常用命令大全(附详细解释),https://blog.csdn.net/good_good_xiu/article/details/116740333

2.maven常用命令集合(收藏大全),https://zhuanlan.zhihu.com/p/355889432

3.Maven查看插件信息,https://blog.csdn.net/bugzeroman/article/details/120739886

相关推荐
淘源码d6 小时前
什么是医院随访系统?成熟在用的智慧随访系统源码
java·spring boot·后端·开源·源码·随访系统·随访系统框架
程序猿阿越7 小时前
Kafka源码(七)事务消息
java·后端·源码阅读
m0_748248027 小时前
C++20 协程:在 AI 推理引擎中的深度应用
java·c++·人工智能·c++20
笑我归无处7 小时前
强引用、软引用、弱引用、虚引用详解
java·开发语言·jvm
02苏_7 小时前
秋招Java面
java·开发语言
爱吃甜品的糯米团子7 小时前
详解 JavaScript 内置对象与包装类型:方法、案例与实战
java·开发语言·javascript
程序定小飞8 小时前
基于springboot的学院班级回忆录的设计与实现
java·vue.js·spring boot·后端·spring
攀小黑8 小时前
基于若依-内容管理动态修改,通过路由字典配置动态管理
java·vue.js·spring boot·前端框架·ruoyi
青云交8 小时前
Java 大视界 -- 基于 Java 的大数据可视化在城市空气质量监测与污染溯源中的应用
java·spark·lstm·可视化·java 大数据·空气质量监测·污染溯源
森语林溪9 小时前
大数据环境搭建从零开始(十七):JDK 17 安装与配置完整指南
java·大数据·开发语言·centos·vmware·软件需求·虚拟机