Maven的常用命令及版本冲突

一、Maven的常用命令

|-----------------|------------------------|
| mvn clean | 清除 target 目录(编译生成的文件) |
| mvn compile | 编译源代码,.java -> .class |
| mvn test | 执行单元测试 |
| mvn package | 打包项目,生成 jar 包或 war |
| mvn install | 打包并将打好的包上传到本地仓库 |
| mvn deploy | 打包并将打好的包上传到远程仓库 |

二、解决 Maven 依赖的版本冲突

**版本冲突:**由于间接依赖导致一个 jar 包有多个不同的版本。

**场景:**当你引入一个库 A,它又依赖 B 和 C,而 B 和 C 依赖了不同版本的某个库 D。

方法一:手动指定版本

在 pom.xml 的 <dependencyManagement> 中手动指定版本,统一所有子模块使用相同版本,避免版本不一致问题。

方法二:排除指定依赖

如果某个库带来了不需要的版本,可以 <exclusions> 来排除它:

java 复制代码
<dependency>
    <groupId>com.example</groupId>
    <artifactId>A</artifactId>
    <version>1.0</version>
    <exclusions>
        <exclusion>
            <groupId>com.example</groupId>
            <artifactId>C</artifactId>
        </exclusion>
    </exclusions>
</dependency>
相关推荐
TPBoreas2 小时前
Jenkins 改完端口号启动不起来了
java·开发语言
金斗潼关2 小时前
SpringCloud GateWay网关
java·spring cloud·gateway
秋名RG3 小时前
深入解析建造者模式(Builder Pattern)——以Java实现复杂对象构建的艺术
java·开发语言·建造者模式
eternal__day3 小时前
Spring Boot 实现验证码生成与校验:从零开始构建安全登录系统
java·spring boot·后端·安全·java-ee·学习方法
陈大爷(有低保)4 小时前
swagger3融入springboot
java
weixin_376934636 小时前
JDK Version Manager (JVMS)
java·开发语言
月月大王7 小时前
easyexcel导出动态写入标题和数据
java·服务器·前端
大G哥8 小时前
Kotlin Lambda语法错误修复
android·java·开发语言·kotlin
行走__Wz8 小时前
计算机学习路线与编程语言选择(信息差)
java·开发语言·javascript·学习·编程语言选择·计算机学习路线
Micro麦可乐9 小时前
最新Spring Security实战教程(十四)OAuth2.0精讲 - 四种授权模式与资源服务器搭建
java·服务器·spring boot·spring·spring security·oauth2·oauth2授权