欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

maven解决jar矛盾

更新时间: 2014-05-14 07:59:21 责任编辑: Author_N2

 

Maven解决jar冲突

 传递依赖是maven最有特色的、最为方便的优点之一,可以省了很多配置。如a 依赖 b,b 依赖c 默认 a也会依赖 c。但是也会带来隐患,如版本冲突。当然maven也考虑到解决办法,可以使用exclusions来排除相应的重复依赖。 


但是我们还会遇到一个严重的问题,那就是,我怎么知道是哪个包的传递依赖产生的冲突 ?那该怎么办呢?当然,maven也会有相应的解决方案。 

首先,你要在pom.xml中加上maven-project-info-reports-plugin插件。 

<reporting> 
<plugins> 
<plugin> 
<groupId>org.apache.maven.plugins</groupId> 
<artifactId> 
maven-project-info-reports-plugin 
</artifactId> 
</plugin> 

</plugins>
</reporting> 

然后再执行:mvn project-info-reports:dependencies 。生成项目依赖的报表,这样你就能够在报表中找出你版本冲突的相关性依赖了。如出现OutOfMemoryError错误,在系统环境中加入参数 MAVEN_OPTS=-Xmx512m 

最后在相应的dependency中加上exclusions来排除相关的传递依赖。 

例: 

<dependency> 
<groupId>jaxen</groupId> 
<artifactId>jaxen</artifactId> 
<version>1.1.1</version> 
<exclusions> 
<exclusion> 
<groupId>com.ibm.icu</groupId> 
<artifactId>icu4j</artifactId> 
</exclusion> 
</exclusions> 
<scope>runtime</scope> 
</dependency>

上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-05-14 07:59:21
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/213490/
本文WWW.DOC100.NET DOC100.NET版权所有。