Maven的基本使用

引入依赖

1.引入Maven仓库存在的依赖,直接引入,刷新Maven

java 复制代码
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>5.2.12.RELEASE</version>
</dependency>

2.引入Maven仓库不存在的依赖引入方式

java 复制代码
<dependency>
    <groupId>rimis-dts-tools</groupId>
    <artifactId>rimis-dts-tools</artifactId>
    <version>1.0.1</version>
    <scope>system</scope>
    <systemPath>${project.build}/src/main/assertj-core.jar</systemPath>
</dependency>

注:project.build就是pom文件所在的目录

compile 缺省值,适用于所有阶段(测试运行,编译,运行,打包)
provided 类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet-api.jar;适用于(测试运行,编译)阶段
runtime 只在运行时使用,如 mysql的驱动jar,适用于(运行,测试运行)阶段
test 只在测试时使用,适用于(编译,测试运行)阶段,如 junit.jar
system Maven不会在仓库中查找对应依赖,在本地磁盘目录中查找;适用于(编译,测试运行,运行)阶段

依赖冲突

1:命令形式

java 复制代码
mvn -Dverbose dependency:tree    #不建议用,依赖多的时候,不好查找

2使用插件

如果搜索插件的时候,没有任何结果的时候,可进行如下设置后,再进行搜索

3:解决依赖冲突

路径最短优先原则

主要根据依赖的路径长短来决定引入哪个依赖

  • 最先声明优先原则

    如果两个依赖的路径一样,声明在前的则优先选择。

  • 排除依赖

    使用exclusion标签来排除依赖

  • 封装成rpc服务

    a.1 a.2

相关推荐
CQU_JIAKE几秒前
4.17[Q]
java·linux·服务器
上海云盾-小余14 分钟前
DDoS 攻击应急响应全流程:从告警触发到业务恢复的黄金 15 分钟
服务器·安全·游戏·ddos
LXY_BUAA18 分钟前
《ubuntu22.04》_新系统的配置_20260418
linux·运维·服务器
上海云盾-小余18 分钟前
API 接口 DDoS 与 CC 攻击防护实战:守住业务最脆弱的数字入口
服务器·ddos
楼田莉子22 分钟前
同步/异步日志系统:日志落地模块\日志器模块\异步日志模块
linux·服务器·c++·学习·设计模式
亦暖筑序35 分钟前
Spring AI Alibaba 报错合集:我踩过的那些坑
java·后端
indexsunny1 小时前
互联网大厂Java面试实战:核心技术与微服务架构在电商场景中的应用
java·spring boot·redis·kafka·maven·spring security·microservices
摇滚侠1 小时前
Java 多线程基础 Java Multithreading Basics
java
今天你TLE了吗1 小时前
LLM到Agent&RAG——AI概念概述 第一章:大模型
java·人工智能·语言模型·大模型
你的牧游哥1 小时前
Java 核心概念详解
java·开发语言