Maven(四)常用命令大全
目录
- 一、mvn 命令参数
- 二、mvn 插件命令
- 1.介绍
- 2.查看插件的使用文档
- 3.常用的插件命令
- 官网地址: https://maven.apache.org/
- 官方插件清单: https://maven.apache.org/plugins/index.html
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.介绍
其实我们平时使用最多的 clean、package、install 等命令都是 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 插件。
用法:
mvn help:describe -Dplugin=插件名
例如:我想查看 dependency 命令的使用文档:
mvn 命令:
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
相关文章:
Maven(四)常用命令大全
目录 一、mvn 命令参数二、mvn 插件命令1.介绍2.查看插件的使用文档3.常用的插件命令 官网地址: https://maven.apache.org/官方插件清单: https://maven.apache.org/plugins/index.html Maven 是一个强大的构建工具,它提供了许多命令来进行项…...
13.3 目标检测和边界框
锚框的计算公式 假设原图的高为H,宽为W 详细公式推导 以同一个像素点为锚框,可以生成 (n个缩放 m个宽高比 -1 )个锚框 锚框的作用: 不用直接去预测真实框的四个坐标,而是: 1.先生成多个锚框。 2.预测每个锚框里是否含有要预测…...
TCP/IP网络江湖初探:物理层的奥秘与传承(物理层上篇-基础与本质)
〇、引言 在这个数字时代,计算机网络如同广袤的江湖,数据在其中畅游,信息传递成为了生活的常态。然而,在这个充满虚拟奇观的网络江湖中,隐藏着一个不容忽视的存在,那就是物理层,这个江湖的基石。就如同江湖中的土地一样,物理层作为计算机网络的基础,承载着数据的最初转…...
计算机视觉五大核心研究任务全解:分类识别、检测分割、人体分析、三维视觉、视频分析
目录 一、引言1.1 计算机视觉的定义1.1.1 核心技术1.1.2 应用场景 1.2 历史背景及发展1.2.1 1960s-1980s: 初期阶段1.2.2 1990s-2000s: 机器学习时代1.2.3 2010s-现在: 深度学习的革命 1.3 应用领域概览1.3.1 工业自动化1.3.2 医疗图像分析1.3.3 自动驾驶1.3.4 虚拟现实与增强现…...
linux -- centos -- cmake 留坑
安装Cmake 在Linux一个目录下: touch poj.cpp touch CMakeLists.txtpoj.cpp的内容:随便输出一点东西啦 CMakeLists.txt的内容: cmake_minimum_required(VERSION 3.6) project(Test) add_executable(Test test.cpp)cmake_minimum_required:c…...
【100天精通python】Day33:使用python操作数据库_SQLite数据库的使用与实战
目录 专栏导读 1 SQLite 简介 2 SQLite数据库安装及使用 2.1 检查 SQLite 支持 2.2 创建数据库文件 2.2.1 使用 Python 创建数据库文件: 2.2.2 使用命令行创建数据库文件: 2.3 连接到 SQLite 数据库: 3 SQLite 中常用的SQL语句…...
通过将信号频谱与噪声频谱进行比较,自动检测适当的带通滤波器转折频率研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
【Sklearn】基于多层感知器算法的数据分类预测(Excel可直接替换数据)
【Sklearn】基于多层感知器算法的数据分类预测(Excel可直接替换数据) 1.模型原理2.模型参数3.文件结构4.Excel数据5.下载地址6.完整代码7.运行结果1.模型原理 多层感知器(Multilayer Perceptron,MLP)是一种前馈神经网络,用于解决分类和回归问题。它包含输入层、若干个隐…...
在 Windows 中恢复数据的 5 种方法
发生数据丢失的原因有多种。无论是因为文件被意外删除、文件系统或操作系统损坏,还是由于软件或硬件级别的存储故障,数据都会在您最意想不到的时候丢失。今天我们重点介绍五种数据恢复方法,以应对意外情况的发生。 1.从另一台机器启动硬盘 如…...
配置使用Gitee账号认证登录Grafana
三方社会化身份源 集成gitee第三方登录 第三方登录的原理 所谓第三方登录,实质就是 OAuth 授权。用户想要登录 A 网站,A 网站让用户提供第三方网站的数据,证明自己的身份。获取第三方网站的身份数据,就需要 OAuth 授权。 举例来…...
使用 Flask 部署 Next.js
原文 使用 Flask 部署 Next.js Flask 和 Next.js 是两个独特的开源 Web 框架,分别构建在 Python 和 JavaScript 编程语言之上。 您可以在没有 Next.js 的情况下构建 Flask 应用程序,也可以在没有 Flask 的情况下构建 Next.js 应用程序。但是࿰…...
网络安全--iptables
总结: iptables 的关键概念和功能: 规则(Rules): iptables 使用规则来定义特定的操作,例如允许或拒绝特定类型的网络流量。每条规则都由条件和操作组成。条件可以是源 IP 地址、目标 IP 地址、端口号等&a…...
【猿灰灰赠书活动 - 02期】- 【Java从入门到精通2023年7月最新(第7版)】
说明:博文为大家争取福利,与清华大学出版社合作进行送书活动 图书:《Java从入门到精通》 一、好书推荐 图书介绍 Java入门经典,95万Java程序员的入行选择。配备升级版Java开发资源库,在线大咖课在线答疑,学…...
Springboot 设置统一的请求返回格式
现在开发过程中主要采用前后端分离的方式进行开发测试,也就是前端封装请求,后端提供标准的API接口服务。一般现在json 格式受到开发者们的青睐,学习过程中我们可以设置接口的返回类型,那么怎么做到设置统一的返回格式呢࿱…...
logstash日志换行处理小解
logstash主用于日志实时数据收集、解析,并将数据转发的工具,内置的功能也相当强大。但,同时意味着,他可能接收到各种情况的数据。 此处,我们主要讲解我实际使用中,碰到的一个小问题,换行(\n)。…...
openpnp - 做一个抛料盒
文章目录 openpnp - 做一个抛料盒概述效果图零件 - 抛料盒主体零件 - 磁铁仓盖板END openpnp - 做一个抛料盒 概述 8mm散料飞达做回来了, 上面用的长方形磁铁(4x6x10mm)透过0.8mm的3D打印薄壁, 和固定铁板的吸力很大, 用磁力固定的非常好. 正好缺一个抛料盒, 就按照散料飞达的…...
数据结构——单链表的实现(c语言版)
前言 单链表作为顺序表的一种,了解并且熟悉它的结构对于我们学习更加复杂的数据结构是有一定意义的。虽然单链表有一定的缺陷,但是单链表也有它存在的价值, 它也是作为其他数据结构的一部分出现的,比如在图,哈希表中。…...
【计算机组成原理】24王道考研笔记——第四章 指令系统
第四章 指令系统 一、指令系统 指令是指示计算机执行某种操作的命令,是计算机运行的最小功能单位。一台计算机的所有指令的集合构成该 机的指令系统,也称为指令集。 指令格式: 1.1分类 按地址码数目分类: 按指令长度分类&…...
C#使用FileInfo和DirectoryInfo类来执行文件和文件夹操作
System.IO.FileInfo 和 System.IO.DirectoryInfo 是C#中用于操作文件和文件夹的类,它们提供了许多有用的方法和属性来管理文件和文件夹。 System.IO.FileInfo: FileInfo 类用于操作单个文件的信息和内容。以下是一些常用的方法和属性: Exi…...
每日一学——TCP/IP参考模型
TCP/IP参考模型是一个用于网络通信的分层架构,它定义了一组协议,这些协议实现了计算机之间的数据传输。TCP/IP参考模型分为四层: 应用层(Application Layer):应用层是网络应用程序与网络之间的接口层。它提…...
Ubuntu系统下交叉编译openssl
一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机:Ubuntu 20.04.6 LTSHost:ARM32位交叉编译器:arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...
设计模式和设计原则回顾
设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
《C++ 模板》
目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板,就像一个模具,里面可以将不同类型的材料做成一个形状,其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式:templa…...
Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
基于PHP的连锁酒店管理系统
有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...
DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态
前言 在人工智能技术飞速发展的今天,深度学习与大模型技术已成为推动行业变革的核心驱动力,而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心,系统性地呈现了两部深度技术著作的精华:…...
