(原创) Maven查看JAR包的依赖关系
如果是用命令行,可进入项目所在目录,然后输入: mvn dependency:tree ,来查看jar包依赖关系。
另外还可以在eclipse操作,如下图所示:

点击run后,开始输出JAR包依赖树。
我在执行这步的时候报了下面的异常:
Caused by: java.lang.ClassNotFoundException: org.sonatype.aether.graph.DependencyNode
在网上搜了好多地方都没有类似的错误,后来参考了一些帖子,怀疑是maven-dependency-plugin的版本问题,然后就把插件的版本改为2.10了:
修改前:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.6</version>.........
修改后:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.10</version>.........
然后再次执行上面所说的命令,执行成功:
......
[INFO] +- com.csair:extra-api:jar:1.0.1-20170228:compile
[INFO] +- com.csair.engine.fq:fq-domain:jar:0.7.0-SNAPSHOT:compile
[INFO] | +- org.springframework:spring-context:jar:3.0.7.RELEASE:compile
[INFO] | | +- org.springframework:spring-aop:jar:3.0.7.RELEASE:compile
[INFO] | | | \- aopalliance:aopalliance:jar:1.0:compile
[INFO] | | +- org.springframework:spring-beans:jar:3.0.7.RELEASE:compile
[INFO] | | +- org.springframework:spring-core:jar:3.0.7.RELEASE:compile
[INFO] | | +- org.springframework:spring-expression:jar:3.0.7.RELEASE:compile
[INFO] | | \- org.springframework:spring-asm:jar:3.0.7.RELEASE:compile
[INFO] | +- com.sun.xml.bind:jaxb-facets:jar:0.9.0:compile
[INFO] | \- com.sun.xml.bind:jaxb-impl:jar:2.1.13:compile
[INFO] | \- javax.xml.bind:jaxb-api:jar:2.1:compile
[INFO] | \- javax.xml.stream:stax-api:jar:1.0-2:compile
[INFO] +- com.csair.engine.fq:fdc-client:jar:1.1.2:compile
[INFO] | +- com.csair.engine.fq:fdc-domain:jar:1.0.1:compile
[INFO] | | \- com.csair.engine.fq:fq-domain-backport:jar:0.2.1:compile
[INFO] | | \- commons-io:commons-io:jar:2.2:compile
[INFO] | \- org.apache.mina:mina-core:jar:2.0.7:compile
[INFO] +- freemarker:freemarker:jar:2.3.8:compile
[INFO] +- org.apache.velocity:velocity:jar:1.7:compile
[INFO] \- org.apache.velocity:velocity-tools:jar:2.0:compile
[INFO] +- commons-digester:commons-digester:jar:1.8:compile
[INFO] +- commons-chain:commons-chain:jar:1.1:compile
[INFO] +- commons-validator:commons-validator:jar:1.3.1:compile
[INFO] +- oro:oro:jar:2.0.8:compile
[INFO] +- sslext:sslext:jar:1.2-0:compile
[INFO] +- org.apache.struts:struts-core:jar:1.3.8:compile
[INFO] | \- antlr:antlr:jar:2.7.2:compile
[INFO] +- org.apache.struts:struts-taglib:jar:1.3.8:compile
[INFO] \- org.apache.struts:struts-tiles:jar:1.3.8:compile
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
........
其中“+-”符号表示该包后面还有其它依赖包,“\-”表示该包后面不再依赖其它jar包了。
除此以外,还有个更加简便的方法,就是在eclipse里面用Maven POM Editor打开pom.xml文件:

如有错误,欢迎指出交流。
(原创) Maven查看JAR包的依赖关系的更多相关文章
- Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图(转载)
Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图 2017年04月05日 10:53:13 李学凯 阅读数:104997更多 所属专栏: Intellij Idea ...
- Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图
Maven 组件界面介绍 如上图标注 1 所示,为常用的 Maven 工具栏,其中最常用的有: 第一个按钮:Reimport All Maven Projects 表示根据 pom.xml 重新载入项 ...
- rcp(插件开发)插件B需要引用插件A中的jar包-如何处理依赖关系
如果插件B需要引用插件A中的jar 通常需要以下几步: 1.插件B要依赖插件A 2.在插件B的build path中添加插件A的jar包 3.插件A的runtime导出插件B中使用jar的packag ...
- maven打jar包包括依赖包
<build> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId& ...
- maven打jar包(包括依赖jar)
<build> <plugins> <plugin> <artifactId> maven-assembly-plugin </artifactI ...
- maven引入jar包冲突问题
1.原因 使用maven过程中,经常会遇到jar包重复加载或者jar包冲突的问题,但是有些jar包是由于maven加载了其他jar包自动引入的,并非自己主动添加的,导致和自己添加的jar包版本冲突 举 ...
- idea升级maven工程jar包版本和解决jar包冲突
原来用过eclipse的都知道,想要升级maven工程的jar包版本或者解决jar包冲突,直接在pom文件下的dependency hierarchy视图下右击冲突的jar包,将其exclude掉,然 ...
- Myeclipse如何使用Maven添加jar包
很多新手都不知道如何在maven项目里添加jar包. 以前我还没接触maven的时候下载过一个demo,是maven项目. 我居然是照着他的pom.xml文件一个一个的写!!! 很多人认为理所当然的东 ...
- maven添加jar包依赖
maven的东西使用了一段时间,但是每次使用都多少有点含糊,所以总结一下. 目前主要使用是在jar包的控制上 原理: 在本地,指定一个文件夹,便是maven的仓库,maven会从远程的中央仓库中下载你 ...
随机推荐
- oracle实现like多关键字查询
oracle实现like多关键字查询: select * from contract_info tt where 1=1 and REGEXP_LIKE(tt.contract_name,'关键字1| ...
- angular ng-bind
<body ng-app=""> <div ng-controller="firstController"> <input typ ...
- java 集合框架(List操作)
/*list 基本操作 * * List a=new List(); * 增 * a.add(index,element);按指定位置添加,其余元素依次后移 * addAll(index,Collec ...
- React的学习(下)
摘要 众所周知,前端三大框架Angular.React.Vue,所以为了跟上时代的步伐,最近开始着手学习React,这时候就发现个大问题,框架一直在更新,提倡的编写语法也在更新,网上有许多教程都是一两 ...
- hdu4417 Super Mario
Problem Description Mario is world-famous plumber. His “burly” figure and amazing jumping ability re ...
- cas 代理认证配置
注:本文转自http://www.ichatter.net/2013/03/21/385/ CAS(Central Authentication Service)框架是一个开源的单点登陆框架.最近公司 ...
- js判断字符串是否全为空(使用trim函数/正则表达式)
我们需要判断用户输入的是否全是空格,可以使用以下方法: 方法一: 使用trim() /* 使用String.trim()函数,来判断字符串是否全为空*/ function kongge1(test) ...
- 蓝桥杯-格子中输出-java
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...
- apache配置多个虚拟目录站点
错误的做法 网上查了几个资料,做法如下:比如想配置两个www.web1.com www.web2.com站点 打开httpd.conf ,然后添加: <VirtualHost *:80> ...
- 如何解决 chrome 58 版本更新导致的 fiddler https 抓包不可用问题
注意!如果该方法不生效,请先卸载原有 fiddler 后再进行新版本 fiddler 安装步骤即可. chrome 于(上周?上上周?)推送了chrome 58 版本的更新,这次更新中直接去掉了证书未 ...