如何在IntelliJ中查询外部Maven库依赖的来源?
查询Maven传递性依赖来源的方法
绝对可以查到!这种情况几乎都是因为com.sun.xml:jaxb-core是某个直接依赖的传递性依赖——也就是你在pom.xml里明确声明的某个依赖本身依赖它,Maven会自动帮你引入这类间接依赖。下面给你两种简单好用的查询方式:
方法一:使用Maven命令行
在项目根目录打开终端,执行以下命令:
mvn dependency:tree
这个命令会打印出整个项目的依赖树结构。你可以在输出结果里搜索jaxb-core,找到后就能看到它的层级关系——比如类似这样的输出:
[INFO] +- com.example:your-direct-dependency:jar:1.0.0:compile
[INFO] - com.sun.xml:jaxb-core:jar:2.3.0:compile
这里的com.example:your-direct-dependency就是直接引入jaxb-core的那个依赖。
方法二:使用IntelliJ自带的依赖分析工具
如果你不想用命令行,IntelliJ已经帮你集成了可视化的依赖分析功能:
- 打开项目的
pom.xml,点击右侧边栏的Maven工具窗口(如果没显示,可通过View > Tool Windows > Maven调出) - 在
Maven窗口的Dependencies节点上右键,选择Show Dependencies - 弹出依赖关系图后,用右上角的搜索框输入
jaxb-core定位到该依赖 - 右键点击这个依赖,选择
Show Origin,就能直接看到它是被哪个直接依赖引入的;也可以通过图中的连线直观找到它的父依赖。
如果之后你想排除这个传递性依赖,也可以在对应的直接依赖里添加<exclusions>标签来移除它哦。
内容的提问来源于stack exchange,提问作者TryMyBest
相关产品推荐
相关产品推荐

