maven学习小结

目录结构

maven为项目提供一个标准目录结构

环境配置

下载maven包后解压,配置解压目录的bin到path变量,然后终端mvn -v,有回显则表明maven安装成功

pom

POM,Project Object Model,项目对象模型,是一个xml,包含了项目基本信息,项目依赖等。执行任务时,maven会在当前目录的pom中查找pom,获取目标信息,然后执行目标

创建pom前,需要先描述项目组,项目唯一id。所有pom都需要project元素,元素里必须有三个字段:groupId,artifactId,version

父pom

父POM是所有POM默认的POM,所有POM都继承自这个POM。当maven发现需要下载的依赖时,会去super pom配的默认仓库去下载

生命周期

idea右侧有maven按钮,可直接执行生命周期选项

仓库

本地仓库

第一次运行maven时,本地仓库才会创建

使用maven时,是直接使用的本地仓库,如果本地仓库没有,则去远程仓库下载到本地仓库,再从本地仓库获取

本地仓库默认路径在用户目录下的.ml2/repository下,如果像修改本地仓库目录,需要在maven解压目录的conf下修改setting.xml文件中localRepository标签的值

中央仓库

中央仓库是由maven社区提供的,包含了绝大多数开源java构件,中心仓库找不到的依赖会去远程仓库寻找

中央仓库由社区管理

中央仓库不需要配置

需要通过网络才能访问

远程仓库

是开发人员自己定义的仓库,当在中央仓库找不到依赖,会到远程仓库寻找。远程仓库在pom里由repositories标签定义

相关推荐
好奇龙猫9 小时前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
saoys9 小时前
Opencv 学习笔记:图像掩膜操作(精准提取指定区域像素)
笔记·opencv·学习
电子小白12310 小时前
第13期PCB layout工程师初级培训-1-EDA软件的通用设置
笔记·嵌入式硬件·学习·pcb·layout
唯情于酒11 小时前
Docker学习
学习·docker·容器
charlie11451419112 小时前
嵌入式现代C++教程: 构造函数优化:初始化列表 vs 成员赋值
开发语言·c++·笔记·学习·嵌入式·现代c++
IT=>小脑虎12 小时前
C++零基础衔接进阶知识点【详解版】
开发语言·c++·学习
#眼镜&13 小时前
嵌入式学习之路2
学习
码农小韩13 小时前
基于Linux的C++学习——指针
linux·开发语言·c++·学习·算法
微露清风13 小时前
系统性学习C++-第十九讲-unordered_map 和 unordered_set 的使用
开发语言·c++·学习
wdfk_prog13 小时前
[Linux]学习笔记系列 -- [fs]seq_file
linux·笔记·学习