-
Maven
-
pom.xml文件详解
-
一级标签
-
bulid( 定义了项目的构建配置,包括编译、测试、打包等过程。可以指定插件和构建生命周期。)
-
dependces(列出了项目依赖的所有外部库。每个依赖项都指定了其坐标(groupId, artifactId, version))
-
depencymanagement( 用于集中管理依赖版本,确保所有子模块使用相同的依赖版本,用于解决jar包依赖其他jar包产生的版本冲突的问题)
-
parent(指定当前项目的父POM。父POM可以定义一些默认配置,如依赖管理、插件管理等,子项目继承这些配置。)
-
module(列出多模块项目中的所有子模块。每个子模块都是一个独立的Maven项目)
-
-
-
依赖范围控制
-
定义
- 当我们引入第三方jar包时,,每个jar包都在Maven的生命周期都有一定生效范围,具体的讲生效范围有编译时(src/mian路径都生效),测试时(src/test路径都生效),打包时(在打包前的时候生效),具体控制则需要通过<scope>标签控制,写在一级标签dependces标签里面。
-
Scope的值
-
compile
-
test
-
provide
-
runtime
-
system
-
-
-
maven模块化管理
-
maven将一个大型项目拆分成多个小模块方式,每个模块都能够都能够单独的运行,测试和部署
-
组成
-
父项目
- 父项目是一个聚合项目,不包含任何实际的代码,主要负责管理子模块的依赖和插件配置,打包方式必须pom,通过module标签聚合子模块
-
子项目
- 是是实际包含代码的项目,每个子模块都有自己的 pom.xml 文件,子模块通过 <parent> 标签引用父项目,继承父项目的配置。
-
-
-
有关Maven的个人笔记总结
秋也凉2025-07-22 18:06
相关推荐
泡茶喝茶写代码6 小时前
A股量化策略回测实战:从行情数据到绩效评估(第 13 篇):放量突破策略文丑颜不良啊6 小时前
LeetCode626~650题目解析果壳science7 小时前
张祥前最新研究成果登上SCI期刊!tianbin9117 小时前
批处理与微调辅助场景:Claude 中转并发、链路缓存与压测对比Rabitebla7 小时前
【Linux 底层原理】工具篇(一):掌握 Ubuntu apt,让软件安装与管理更简单frjc7 小时前
Spring AI 里 ChatClient 和 ChatModel 有什么区别?什么时候该用哪个?Wang's Blog7 小时前
Java 项目实战: 交友项目 - 圈子功能的表设计方案叼烟扛炮7 小时前
Linux 学习笔记(二十三):深入 Ext 文件系统(下)—— 原理、缓存与软硬链接文丑颜不良啊7 小时前
LeetCode601~625题目解析stolentime7 小时前
SOS DP学习笔记