Maven笔记(更新中)

一、Maven简介

Maven是一款为Java项目构建,依赖管理的工具(软件),使用Maven可以自动化构建,测试,打包和发布项目,大大提高了开发效率和质量

Maven主要作用理解

依赖管理

Maven可以管理项目的依赖,包括自动下载所需依赖库,自动下载依赖所需的依赖并且保证版本没有冲突,依赖版本管理等, Maven的依赖管理能够帮助开发人员自动解决软件包依赖问题, 使得开发人员能够轻松地将其他开发人员开发的模块或第三方框架集成到自己的应用程序或模块中, 避免出现版本冲突和依赖缺失等问题

通过Maven,我们可以方便地维护项目所依赖的外部库,而我们仅仅需要编写配置即可

构建管理

项目构建是指将源代码,配置文件,资源文件等转化为能够运行或部署的应用程序或库的过程.

Maven可以管理项目的编译,测试,打包,部署等构建过程.通过实现标准的构建生命周期,Maven可以确保每一个构建过程都遵循同样的规则和最佳实践.同时,Maven的插件机制也使得开发者可以对构建过程进行扩展行额定制.主动触发构建,只需要简单的命令操作即可

清理: clean

编译: compile

测试: test

报告: site

打包: package

部署: deploy

二、构建插件,命令,声明周期命令之间关系

构建生命周期

构建生命周期可以理解成是一组固定构建命令的有序集合, 触发周期后的命令, 会自动触发周期前的命令

主要三个构建生命周期

构建生命周期可以简化构建过程

清理周期

主要是对项目编译生成文件进行清理

包括命令: clean

默认周期

定义了真正构建时所需要执行的所有步骤, 它是生命周期中最核心的部分

包括命令: compile - test - package - install / deploy

报告周期

包含命令: site

打包: mvn clean pacckage 本地仓库: mvn clean install

插件,命令,周期三者关系

周期 --> 包含若干命令 --> 包含若干插件

使用周期命令构建, 简化构建过程

最终进行构建的是插件

三、基于IDEA进行Maven依赖管理

通过定义POM文件, Maven能够自动解析项目的依赖关系, 并通过Maven仓库自动下载和管理依赖, 从而避免了手动下载和管理依赖的繁琐工作和可能引发的版本冲突问题

Maven工程核心信息配置和解读(GAVP)

六、Maven依赖传递和依赖冲突

七、Maven工程继承和聚合关系\

八、了解Maven仓库之间的关系和优先级

相关推荐
寻星探路3 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
曹牧5 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
wdfk_prog6 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
ouliten6 小时前
cuda编程笔记(36)-- 应用Tensor Core加速矩阵乘法
笔记·cuda
爬山算法6 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
kfyty7256 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai
猫头虎6 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
李少兄6 小时前
在 IntelliJ IDEA 中修改 Git 远程仓库地址
java·git·intellij-idea
忆~遂愿7 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能