maven项目,去除jar包中的不想要的依赖关系(Document root element "beans", must match DOCTYPE root "null". )

maven dependencies中并不会删除

以下方法maven dependencies中并不会删除,可能程序引入的时候,会去掉这种依赖(猜的)

解释:

就是说项目中要用到某一个a.jar包,通过maven引入了之后,也自动的导入了该jar包所依赖的包,这里就会存在一个问题,

如果a.jar包依赖b.jar这个项目的1.0版本,可是我的项目中已经有b.jar这个项目2.0的版本了,这里就会造成冲突,解决的办

法是去除a.jar包依赖b.jar这个项目的1.0版本的依赖关系,让项目使用我已有的包。

最近搭一个springmvc4.x的maven环境,由于要用到webserice,打算整合jersey做,在导入jersey-spring.jar时出现了这样

的问题,我用的是jersey-spring1.81.jar版本,该项目依赖的是spring3,所以把jersey-spring1.81.jar加入maven或就出现了

这样的情况,由于它依赖spring3.x,所以自动导入了spring3.x的jar,并把我spring4.x的包自动删除了,导致spring4.x根本

无法构建,可是我已经有4.x的包,完全不需要它自动导入3的包删除4的包啊

解决版本:

去除jersey-spring1.81.jar原有的依赖,这样就不会自动去导spring3的包了,而是使用我已有的spring4的包,

同理,以后遇到类似的问题也可以这么解决,规则是在要导入的包中加一个去除原有依赖的标签,标签内写想去除的包的id和版本。

贴上解决代码

---------------------------------------------------------------------------

		<dependency>
			<groupId>com.sun.jersey.contribs</groupId>
			<artifactId>jersey-spring</artifactId>
			<version>1.18.1</version>
			<!-- 去除自带的spring版本 -->
            		<exclusions>
                		<exclusion>
                    			<groupId>org.springframework</groupId>
                    			<artifactId>spring-aop</artifactId>
                		</exclusion>
                		<exclusion>
                    			<groupId>org.springframework</groupId>
                    			<artifactId>spring-context</artifactId>
                		</exclusion>
                		<exclusion>
                    			<groupId>org.springframework</groupId>
                    			<artifactId>spring-beans</artifactId>
                		</exclusion>
                		<exclusion>
                    			<groupId>org.springframework</groupId>
                    			<artifactId>spring-core</artifactId>
                		</exclusion>
                		<exclusion>
                    			<artifactId>spring-web</artifactId>
                    			<groupId>org.springframework</groupId>
                		</exclusion>
            		</exclusions>
		</dependency>

或者参考如下http://stamen.iteye.com/blog/1554987
时间: 2024-11-03 03:35:58

maven项目,去除jar包中的不想要的依赖关系(Document root element "beans", must match DOCTYPE root "null". )的相关文章

maven项目,去除jar包中的不想要的依赖关系

解释:就是说项目中要用到某一个a.jar包,通过maven引入了之后,也自动的导入了该jar包所依赖的包,这里就会存在一个问题,如果a.jar包依赖b.jar这个项目的1.0版本,可是我的项目中已经有b.jar这个项目2.0的版本了,这里就会造成冲突,解决的办法是去除a.jar包依赖b.jar这个项目的1.0版本的依赖关系,让项目使用我已有的包. 最近搭一个springmvc4.x的maven环境,由于要用到webserice,打算整合jersey做,在导入jersey-spring.jar时出

IDEA中MAVEN项目打JAR包的简单方法

Idea中为一般的非Web项目打Jar包是有自己的方法的,网上一搜就能查到很多. 但是如果是为Maven项目打Jar包,其实是很简单的,因为maven本身就有打Jar包的命令. 在Idea中把这些都做成了可视化的操作界面,只需要如下操作就好: 在Maven Project目录下,点击package 此时在target目录下,就会生成这个项目的jar包 需要说明的是,如果一个maven项目中有多个子目录,每一个子目录中的pom.xml对应一个项目,它的作用范围只有这一个子目录下的.比如扫描配置文件

maven项目添加jar包

使用集成工具创建一个maven项目,如果需要添加开发包,只需去maven仓库找到对应的包,将配置信息加入pom.xml文件即可.这样,我们就再也不用到处寻找和下载jar包了. 用例:开发工具 STS 创建springMVC项目,File—>New Spring Project(Templates选择Spring MVC Project)—>next—>finish. 例如配置数据源需要使用commons-dbcp.jar包,只需要去maven仓库(网址:http://mvnreposit

Maven项目导出jar包

在pom.xml所在目录下,执行 mvn dependency:copy-dependencies -DoutputDirectory=lib 还可以设置依赖范围 mvn dependency:copy-dependencies -DoutputDirectory=lib -DincludeScope=compile Maven项目导出jar包

转:maven项目添加jar包.

很多新手都不知道如何在maven项目里添加jar包. 以前我还没接触maven的时候下载过一个demo,是maven项目. 我居然是照着他的pom.xml文件一个一个的写!!! 很多人认为理所当然的东西对于初学者却是一个很难迈过去的门槛. 所以简单的写下如何在maven项目中添加jar包. 根据 配合m2eclipse创建一个标准的maven web项目.这篇blog,我们创建了一个基于maven的web项目. 创建后我们如何添加jar包呢? 点击pom.xml文件.我们可以看到下面有7个标签.

Maven项目打Jar包,如何添加依赖

之前介绍了使用spring-boot-maven-plugin插件打jar包,会把所有的依赖文件都导入,然后变成了一个可执行的jar包.这样的不好的地方就是,我实际上并不需要把依赖的jar包也打入到生成的jar包里面去,仅仅需要把当前项目的代码打包.生成的jar包只要能引用到它所依赖的jar包,并且可以执行就好了. 那么一般情况下,打包时如何添加依赖呢? 使用maven-dependency-plugin插件 子项目中的pom.xml文件中,添加以下maven-dependency-plugin

关于使用命令添加jar进自己的pom文件中-maven项目添加jar包

现在几乎开发项目都是使用的maven项目,但是有的时候可以使用比较偏门或者新的jar可能在网上搜不到在pom文件里的配置应该如何写,因此写下这篇博客. 比如我现在想加入的AAA.jar这个包 打开cmd,在里面输入命令 mvn install:install-file -Dfile=想添加jar包的位置(比如E:/AAA.jar) -DgroupId=这个包放在你本地库的位置(例如com.公司名.你这个包的相关起这个名 com.xxxx.BBB) -DartifactId=BBB -Dversi

maven项目引入jar包

在maven项目中,如果不小心把build path中maven依赖包干掉了,不知道怎么添加回来,可以找到.classpath文件,加上下面这段即可 <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> <attributes> <attribute name="maven.pomderived" value=&qu

idea非maven项目引入jar包

以JUnit为例. 下载jar包,并粘贴到项目的lib文件中,如果没有这个文件夹需要自己手动创建. 可以发现这个新粘入的jar包前没有小三角,这是还没被解压编译到本项目中. 这时在这上面右键,找到Add as Library. 即可导入jar包了. 原文地址:https://www.cnblogs.com/lxy764139720/p/12190059.html