美文网首页技术文Java面试Java学习笔记
Java面试题:maven依赖原则以及jar包冲突

Java面试题:maven依赖原则以及jar包冲突

作者: 志哥谈笑间 | 来源:发表于2016-10-17 17:50 被阅读1033次

以前自以为maven玩的已经很溜了,结果今天被面试官第一个问题就问倒了。具体问题就是maven的依赖原则:加载顺序和依赖冲突。

一、maven依赖原则

1、依赖路径最短优先原则

一个项目Demo依赖了两个jar包,其中A-B-C-X(1.0) , A-D-X(2.0)。由于X(2.0)路径最短,所以项目使用的是X(2.0)。

2、pom文件中申明顺序优先

如果A-B-X(1.0) ,A-C-X(2.0) 这样的路径长度一样怎么办呢?这样的情况下,maven会根据pom文件声明的顺序加载,如果先声明了B,后声明了C,那就最后的依赖就会是X(1.0)。

3,覆写优先

子pom内声明的优先于父pom中的依赖。

二、如何解决jar冲突

遇到冲突的时候第一步要找到maven加载的到时是什么版本的jar包,通过们mvn dependency:tree查看依赖树,通过maven的依赖原则来调整坐标在pom文件的申明顺序是最好的办法。

微信公众号:志哥 (ID: zhige-me)
期待与你相遇,一同成长前行!

相关文章

  • Java面试题:maven依赖原则以及jar包冲突

    以前自以为maven玩的已经很溜了,结果今天被面试官第一个问题就问倒了。具体问题就是maven的依赖原则:加载顺序...

  • Maven中依赖冲突解决方案

    在使用Maven中我们导入jar包坐标时会产生依赖传递,而依赖传递难免会发生jar包间的依赖冲突,解决jar包冲突...

  • Maven解决依赖冲突

    maven依赖冲突以及解决方法 什么是依赖冲突 依赖冲突是指项目依赖的某一个jar包,有多个不同的版本,因而造成类...

  • 依赖冲突解决办法

    依赖冲突解决办法 maven 的价值 Java开发中,jar的管理由maven来管。maven做的事情: jar统...

  • maven jar包冲突原理与解决办法

    jar 包冲突原因 大概就是jar包冲突(今天遇到的是第一种) 依赖传递 因为Maven拥有传递依赖的特性,因此真...

  • Maven 依赖管理

    管理包依赖是 Maven 核心功能之一,下面通过如何引入 jar 包;如何解析 jar 包依赖;包冲突是如何产生;...

  • java Maven

    1.Maven简介 1.1 Maven是什么 1)统一管理jar 包的工具(处理了jar 依赖和冲突问题)2)方便...

  • Maven解决jar包冲突

    一、Maven中jar包冲突产生原因 MAVEN项目运行中如果报如下错误: Caused by:java.lang...

  • 下载maven依赖到指定目录

    1 场景 将maven依赖jar包和依赖jar包拷贝到指定目录 2 方案 使用maven插件maven-depen...

  • 依赖版本引用全对比

    1. 背景 当我们使用maven管理jar包依赖时,经常会发生jar包冲突的情况,大多数时候,可能就是排除一下冲突...

网友评论

本文标题:Java面试题:maven依赖原则以及jar包冲突

本文链接:https://www.haomeiwen.com/subject/nmhzyttx.html