Maven

概述

:Maven就是一个项目管理工具,

核心功能

1)项目构建

当我们开发了项目之后,项目就会进行编译测试打包发布的流程,如果代码进行修改,那么这些步骤就会都要重新做一遍们就会比较麻烦,此时Maven会有一些命令,就是Maven命令,会将这些步骤简化,以便于完成项目的构建

命令含义:clean:清理编译的文件

compile:编译

test:开发人员的测试代码

package:打包把class文件,放在一起打包成jar包或者war包

install:把jar包放在本地仓库里,deploy:把jar包放在远程仓库里

2)依赖管理

依赖就是当前项目所需要的jar包,而Maven通过pom.xml文件的配置获取jar包

依赖坐标

包括:组织ID,jar包名称,版本号

依赖配置

:通过pom.xml填写依赖坐标就可以配置jar包也就是依赖

依赖传递

:我们配置依赖时,可能这个jar包会依赖于某个jar包,那么这个jar包就会同时出现

依赖排除

当jar包之间产生冲突时我们就需要排除依赖

java 复制代码
   <exclusions>
                <exclusion>
                    <artifactId>protobuf-java</artifactId>
                    <groupId>com.google.protobuf</groupId>
                </exclusion>
            </exclusions>

Maven Help插件

当项目比较复杂时,我们不能明确知道jar包之间的冲突,那么我们就需要插件找到冲突,观察包之间的依赖关系

Maven仓库

我们在pom.xml文件中配置好依赖坐标之后,刷新文件就会根据依赖坐标去仓库寻找jar包并下载,添加到项目当中

当我们的项目需要下载jar包,会先从本地仓库中去找,有私服先从这里面找,最后在到中央仓库中去找

本地仓库

本地仓库的地址可以在IDEA中的file-setting中看到

远程仓库

中央仓库

配置文件:我们从中央仓库下载,将中央仓库的地址改成国内的

我们可以从中央仓库查看jar包坐标,以便于配置jar包

私有服务器

相关推荐
小毅&Nora1 小时前
【Java线程安全实战】⑨ CompletableFuture的高级用法:从基础到高阶,结合虚拟线程
java·线程安全·虚拟线程
冰冰菜的扣jio1 小时前
Redis缓存中三大问题——穿透、击穿、雪崩
java·redis·缓存
小璐猪头1 小时前
专为 Spring Boot 设计的 Elasticsearch 日志收集 Starter
java
ps酷教程2 小时前
HttpPostRequestDecoder源码浅析
java·http·netty
闲人编程2 小时前
消息通知系统实现:构建高可用、可扩展的企业级通知服务
java·服务器·网络·python·消息队列·异步处理·分发器
栈与堆2 小时前
LeetCode-1-两数之和
java·数据结构·后端·python·算法·leetcode·rust
OC溥哥9992 小时前
Paper MinecraftV3.0重大更新(下界更新)我的世界C++2D版本隆重推出,拷贝即玩!
java·c++·算法
星火开发设计2 小时前
C++ map 全面解析与实战指南
java·数据结构·c++·学习·算法·map·知识
*才华有限公司*2 小时前
RTSP视频流播放系统
java·git·websocket·网络协议·信息与通信
gelald3 小时前
ReentrantLock 学习笔记
java·后端