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仓库之间的关系和优先级

相关推荐
RealPluto13 分钟前
Spring AOP 失效排查
java·spring
码路飞38 分钟前
热榜全是 OpenClaw,但我用 50 行 Python 就造了个桌面 AI Agent 🤖
java·javascript
Nyarlathotep01131 小时前
LinkedList源码分析
java·后端
用户8307196840821 小时前
Java 告别繁琐数据统计代码!MySQL 8 窗口函数真香
java·sql·mysql
带刺的坐椅2 小时前
SolonCode v0.0.20 发布 - 编程智能体(新增子代理和浏览器能力)
java·ai·agent·solon·solon-ai·claude-code·openclaw
会员源码网3 小时前
数字格式化陷阱:如何优雅处理 NumberFormatException
java
孔明click333 小时前
Sa-Token v1.45.0 发布 🚀,正式支持 Spring Boot 4、新增 Jackson3/Snack4 插件适配
java·sa-token·开源·springboot·登录·权限认证
程序猿阿越4 小时前
Kafka4源码(二)创建Topic
java·后端·源码阅读
悟空码字4 小时前
Spring Boot 整合 MongoDB 最佳实践:CRUD、分页、事务、索引全覆盖
java·spring boot·后端
省长4 小时前
Sa-Token v1.45.0 发布 🚀,正式支持 Spring Boot 4、新增 Jackson3/Snack4 插件适配
java·后端·开源