后端(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、在命令行中,通过命令执行

相关推荐
智商低情商凑7 小时前
Go学习之 - Goroutines和channels
开发语言·学习·golang
敲敲了个代码8 小时前
CSS 像素≠物理像素:0.5px 效果的核心密码是什么?
前端·javascript·css·学习·面试
moringlightyn8 小时前
Linux---进程状态
linux·运维·服务器·笔记·操作系统·c·进程状态
go_bai8 小时前
Linux-线程2
linux·c++·经验分享·笔记·学习方法
闲聊MoonL9 小时前
【AMBA】Caches协议分析
笔记
CappuccinoRose10 小时前
MATLAB学习文档(二十八)
开发语言·学习·算法·matlab
('-')11 小时前
《从根上理解MySQL是怎样运行的》第四章学习笔记
笔记·学习·mysql
DIY机器人工房11 小时前
嵌入式面试题:看你学习了自动控制原理这门课,讲一下欠驱动系统?
stm32·单片机·学习·嵌入式·自动控制原理
laplace012312 小时前
happy-llm笔记
笔记
IUGEI12 小时前
【后端开发笔记】JVM底层原理-垃圾回收篇
java·jvm·笔记·后端