有关Maven的个人笔记总结

  • 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> 标签引用父项目,继承父项目的配置。
相关推荐
泡茶喝茶写代码6 小时前
A股量化策略回测实战:从行情数据到绩效评估(第 13 篇):放量突破策略
java·python·股票数据api·股票数据api接口·股票量化数据api·股票量化数据接口
文丑颜不良啊6 小时前
LeetCode626~650题目解析
java·leetcode
果壳science7 小时前
张祥前最新研究成果登上SCI期刊!
笔记·嵌入式硬件·算法·硬件工程·几何学
tianbin9117 小时前
批处理与微调辅助场景:Claude 中转并发、链路缓存与压测对比
java·开发语言·缓存
Rabitebla7 小时前
【Linux 底层原理】工具篇(一):掌握 Ubuntu apt,让软件安装与管理更简单
linux·笔记·算法·ubuntu
frjc7 小时前
Spring AI 里 ChatClient 和 ChatModel 有什么区别?什么时候该用哪个?
java·开发语言·spring·ai
Wang's Blog7 小时前
Java 项目实战: 交友项目 - 圈子功能的表设计方案
java·开发语言·交友
叼烟扛炮7 小时前
Linux 学习笔记(二十三):深入 Ext 文件系统(下)—— 原理、缓存与软硬链接
linux·笔记·学习
文丑颜不良啊7 小时前
LeetCode601~625题目解析
java·leetcode
stolentime7 小时前
SOS DP学习笔记
c++·笔记·学习·算法·贪心算法·动态规划·二进制