后端(JavaWeb)学习笔记(CLASS 1):maven

maven是apache下的一个开源项目,是一款用于管理和构建java项目的工具

Apache Maven 是一个项目管理和构建工具,它基于项目对象模型(pom)的概念,通过一小段描述信息来管理项目的构建

一、作用

1、依赖管理:方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题

2、统一项目结构:提供标准、统一的项目结构

3、项目构建:标准跨平台的自动化项目构建方式

二、依赖管理

1、依赖配置

依赖:指当前项目运行所需要的jar包,一个项目中可引入多个依赖

配置:

1、在pom.xml中编写<dependencies>标签

2、在<dependencies>标签中使用<dependency>引入坐标

3、定义坐标的groupId,artifactId,vesion

4、点击刷新按钮,引入最新加入的坐标

2、依赖传递

依赖是具有传递性

直接依赖:在当前项目中通过依赖配置建立的依赖关系

间接依赖:被依赖的资源如果依赖其他资源,当前项目间接依赖其他资源

排除依赖:排除依赖是指主动断开依赖的资源,被排除的资源无需指定版本

3、依赖范围

依赖的jar包,默认情况下,可以在任何地方使用。可以通过<scope>...</scope>设置其作用范围

作用范围:

主程序范围有效。(main文件夹范围内)

测试程序范围有效。(test文件夹范围内)

是否参与打包运行。(package指令范围内)

4、生命周期

Maven的生命周期就是为了对所有的maven项目构建过程进行抽象和统一

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

clean:清理工作

default:核心工作,如:编译、测试、打包、安装、部署等

site:生成报告、发布站点等

生命周期阶段:

注意:在同一套生命周期中,当运行后面的阶段时,前面的阶段都会运行

执行生命周期的两种方式

1、在idea中,右侧的maven工具栏,选中对应的生命周期,双击执行

2、在命令行中,通过命令执行

相关推荐
心中有国也有家26 分钟前
AtomGit Flutter 鸿蒙客户端:初始化流水线
学习·flutter·华为·harmonyos
a11177644 分钟前
SLAM 学习笔记(三)视觉里程计2(VO) 特征点法
人工智能·笔记·学习
Yang_jie_031 小时前
笔记:数据结构(循环队列相关判断条件)
数据结构·笔记
三品吉他手会点灯1 小时前
嵌入式机器学习 - 学习笔记1.1.2 - 机器学习的局限性与伦理
人工智能·笔记·嵌入式硬件·学习·机器学习
Xpower 171 小时前
详细解释 Codex 最近一次功能更新,以及 GPT-5.6 Sol、Terra、Luna 的能力、价格、使用方式和适用场景。
人工智能·python·gpt·学习
Dream_ksw1 小时前
机器学习之基于最小二乘的线性回归正规方程求解公式推导(有监督学习)
学习·机器学习·线性回归
鱼子星_2 小时前
【C++】类和对象(下)——初始化列表,类型转换,static成员,友元,内部类,匿名对象,编译器的优化拓展
c语言·c++·笔记
千寻xun10 小时前
一、理论篇-NVME协议学习笔记
笔记·学习·fpga开发·nvme ssd·nvme协议
researcher-Jiang11 小时前
高性能计算之OpenMP——超算习堂学习1
android·java·学习
MartinYeung515 小时前
[论文学习]大语言模型安全综述:攻击、防御、对齐、度量与护栏的深度解析
学习·安全·语言模型