Maven常用命令介绍(Ⅰ)

基本命令

在这里插入图片描述

Maven生命周期

Maven的生命周期是对所有的构建过程进行抽象和统一。Maven的生命周期是抽象的,这意味着生命周期本身不做任何实际的工作,生命周期只是定义了一系列的阶段,并确定这些阶段的执行顺序。而在执行这些阶段时,实际的工作还是由插件来完成的。这种思想与设计模式中的模板模式非常相似。

3个相互独立的生命周期

Maven有三套相互独立的生命周期:

  1. Clean
    clean生命周期的目的是清理项目
  2. Default
    default生命周期的目的是构建项目
  3. site
    site生命周期的目的是建立项目站点。
生命周期cleandefaultsite
阶段(phase),执行顺序由上至下pre-cleanvalidatepre-site
cleaninitializesite
post-cleangenerate-sourcespost-site
process-sourcessite-deploy
generate-resources
process-resources
compile
process-classes
generate-test-sources
process-test-sources
generate-test-resources
process-test-resources
test-compile
process-test-classes
test
prepare-package
package
pre-integration-test
integration-test
post-integration-test
verify
install
deploy

例如执行mvn clean,会从上到下依次执行pre-clean和clean

假设maven项目目录结构是这样的
在这里插入图片描述

mvn compile

编译命令,执行过后会生成对应的target目录
在这里插入图片描述

target中包含了maven插件和编译之后生成的class文件
在这里插入图片描述

mvn clean

清除target包的内容
在这里插入图片描述
在这里插入图片描述

mvn package

打包命令,本质上=mvn compile + mvn test + mvn package(看生命周期可以得出这个结论)

打包之后的target内容比较复杂

在这里插入图片描述
相比于compile,主要多了jar包,test包下的类class文件,说明确实执行了mvn test

mvn install

mvn package+把包放入本地maven仓库

我们先把本地maven仓库的jar包删除
在这里插入图片描述
在这里插入图片描述

然后执行mvn clean install
在这里插入图片描述
target与package没区别
在这里插入图片描述
但是本地maven仓库出现了jar包!
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/27846.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【JavaScript脚本宇宙】深入解析六大图像裁剪库:帮你找到最佳选择

图像裁剪新纪元:从基础到进阶的六大解决方案 前言 随着数字化内容的爆炸式增长,图像编辑和裁剪功能已成为多个应用程序中的核心需求。无论是社交媒体平台、电子商务网站还是个人博客,能够快速、方便地裁剪和调整图像以适应不同需求的重要性…

System-Verilog 实现DE2-115流水灯

文章目录 一、 SystemVerilog1. SystemVerilog简介2. 基本语法和特性 二、实验过程hello.v文件引脚分配 三、实验效果参考 一、 SystemVerilog 1. SystemVerilog简介 SystemVerilog是一种高级的硬件描述语言(HDL),它不仅继承了Verilog语言的…

大数据之Hadoop是什么?Hadoop起源?

什么是Hadoop Hadoop 是一个用于存储和处理大规模数据集(大数据)的分布式存储和分布式计算平台。它由 Apache 软件基金会维护,并基于 Java 编程语言编写。Hadoop 的核心设计理念是能够在普通硬件上运行,并且能够处理非常大的数据集。狭义上说Hadoop就是一个框架平台,广义…

SolarLab - hackthebox

简介 靶机名称:SolarLab 难度:中等 靶场地址:https://app.hackthebox.com/machines/SolarLab 本地环境 靶机IP :10.10.11.16 ubuntu渗透机IP(ubuntu 22.04):10.10.16.17 windows渗透机IP(windows11&…

Redis的安装(linux、docker)与其基本的api使用

一、Redis简介 Redis是一个开源的,使用 C 编写,高性能的Key-Value的NoSQL数据库。 SQL :关系型数据库,例如:MySQL,Oracle等等NoSQL :Not Only SQL 不仅仅是SQL,表示是非关系型数据库…

《华为项目管理之道》第1章笔记

《华为项目管理之道》,是新出的华为官方的项目管理书,整个书不错。第1章的精华: 1.2.2 以项目为中心的机制 伴随着项目型组织的建立,华为逐步形成了完备的项目管理流程和制度,从而将业务运 作构建在项目经营管理之…

Mybatis-Plus多种批量插入方案对比

背景 六月某日上线了一个日报表任务,因是第一次上线,故需要为历史所有日期都初始化一次报表数据 在执行过程中发现新增特别的慢:插入十万条左右的数据,SQL执行耗费高达三分多钟 因很早就听闻过mybatis-plus的[伪]批量新增的问题&…

python命名空间详解

Python中的命名空间是编程语言设计的一个核心概念,它负责存储变量名与其对应的值之间的映射关系,确保了程序中变量的唯一性和可访问性。命名空间不仅关乎变量的生命周期和作用范围,也是Python中实现封装、避免命名冲突的重要机制。 1. 命名空…

ORA-27090: Unable to reserve kernel resources for asynchronous disk I/O

一套11.2.0.4的rac库巡检,发现asm实例日志有如下报错 2.5.2 locate alert_${hst}.log tail -n 200 /oracle/app/grid/diag/asm/asm/ASM1/trace/alert_ASM1.log Errors in file /oracle/app/grid/diag/asm/asm/ASM1/trace/ASM1_ora_96212.trc: ORA-27090: Unable to…

利器放送丨如何在PS里使用stable diffusion插件?

各位设计界的领军人物们,你们一定对PS(也就是大家熟知的Photoshop)不陌生吧。同样,对于AI领域的精英们,SD(stablediffusion)这款软件也应该是如雷贯耳。这两款软件,各自独立且功能强…

c++题目_第K小的数(进阶)

第K小的数 时间限制: C/C 1s 其他语言 2s 空间限制: C/C 256MB 其他语言 512MB 题目描述 给定 nn 个正整数 a1,a2,…,ana1​,a2​,…,an​ 和 mm 个正整数 b1,b2,…,bmb1​,b2​,…,bm​。 请在 nmnm 个 aibj(1≤i≤n,1≤j≤m)ai​bj​(1≤i≤…

VSCode格式化插件-prettier

VSCode格式化插件 1.安装插件:prettier 2.设置默认格式化工具 设置中,搜索 “Default Formatter”。 在编辑器设置中,将默认格式化工具设为 Prettier。 3.启用格式化选项: 在设置中搜索 “Format On Save”,并勾选…

fastapi相关知识点回顾

poetry poetry是一个包管理工具,能够管理一个项目中python相关的依赖。 安装: pip install poetry初始化项目: poetry init添加依赖: poetry add fastapi这个命令相当于 pip instal fastatpi。 poetry使用国内源 poetry 默…

几种经典查找算法

几种经典查找算法 顺序查找法二分查找法判定树 二叉查找树(BST)索引查找B-树B树散列表(hash)查找 顺序查找法 顺序查找的平均查找长度为: 时间复杂度为0(n); 二分查找法 int bin…

vxe-table表格新增节点

做前端的朋友可以参考下&#xff1a;也可结合实际需求查看相应的官方文档 效果图 附上完整代码 <template><div><vxe-toolbar ref"toolbarRef" :refresh"{queryMethod: searchMethod}" export print custom><template #buttons>&…

算法训练营第六十天(延长12天添加图论) | LeetCode 647 回文子串、LeetCode 516 最长回文子序列

LeetCode 67 回文子串 思路很简单&#xff0c;每一个dp[i]等于dp[i-1]加上当前字符向前直到0各个长度字符串回文串个数即可 代码如下&#xff1a; class Solution {public boolean isValid(String s) {int l 0, r s.length() - 1;while (l < r) {if (s.charAt(l) ! s.ch…

MAC 下搭建LVGL仿真器

0.前置条件&#xff0c;保证电脑已经安装cmake&#xff0c;sdl2. 1. 下载仿真器代码&#xff1a;&#xff1a; git clone https://github.com/lvgl/lv_sim_vscode_sdl.git 2. 因为上面的仓库默认是没有lvgl源码&#xff0c;故cd 到lv_sim_vscode_sdl目录下&#xff0c;再下…

08:打印字符

OpenJudge - 08:打印字符 描述 输入一个ASCII码&#xff0c;输出对应的字符。 输入 一个整数&#xff0c;即字符的ASCII码&#xff0c;保证存在对应的可见字符。 输出 一行&#xff0c;包含相应的字符。 样例输入 65 样例输出 A >>>>>>分割线>>>>…

代码随想录算法训练营第三十八天| 509. 斐波那契数、70. 爬楼梯、 746. 使用最小花费爬楼梯

LeetCode 509. 斐波那契数 题目链接&#xff1a;https://leetcode.cn/problems/fibonacci-number/description/ 文章链接&#xff1a;https://programmercarl.com/0509.%E6%96%90%E6%B3%A2%E9%82%A3%E5%A5%91%E6%95%B0.html 思路 public int fib(int n) {// dp[i]表示第i个数…

Java 注解设计 -- Java 语言注解的介绍、高阶应用与自定义注解

大家好,我是栗筝i,这篇文章是我的 “栗筝i 的 Java 技术栈” 专栏的第 012 篇文章,在 “栗筝i 的 Java 技术栈” 这个专栏中我会持续为大家更新 Java 技术相关全套技术栈内容。专栏的主要目标是已经有一定 Java 开发经验,并希望进一步完善自己对整个 Java 技术体系来充实自…