java.lang.NoClassDefFoundError:org/springframework/core/defaultParameterNameDiscoveryr
我正试图用maven依赖项来解决我的spring hibernate问题 我的服务器未启动并引发以下错误:java.lang.NoClassDefFoundError:org/springframework/core/defaultParameterNameDiscoveryr,spring,hibernate,Spring,Hibernate,我正试图用maven依赖项来解决我的spring hibernate问题 我的服务器未启动并引发以下错误: java.lang.NoClassDefFoundError: org/springframework/core/DefaultParameterNameDiscoverer java.lang.NoClassDefFoundError: org/springframework/core/ErrorCoded 我不知道这是我的依赖关系问题还是我的服务器问题。如果我的项目需要什么,请告
java.lang.NoClassDefFoundError: org/springframework/core/DefaultParameterNameDiscoverer
java.lang.NoClassDefFoundError: org/springframework/core/ErrorCoded
我不知道这是我的依赖关系问题还是我的服务器问题。如果我的项目需要什么,请告诉我。以下是我在pom.xml文件中添加的依赖项。我正在使用maven 4.0.0
3.0.5.1发布
朱尼特
朱尼特
3.8.1
测试
org.springframework
弹簧芯
${spring.version}
org.springframework
春季甲虫
4.0.6.1发布
org.springframework
弹簧网
${spring.version}
org.springframework
SpringWebMVC
${spring.version}
org.hibernate
冬眠核心
4.3.5.最终版本
罐子
编译
org.hibernate
休眠ehcache
4.3.5.最终版本
mysql
mysql连接器java
5.1.31
abc
http://repo1.maven.org/maven2
在一个项目中混合Spring版本是不明智的
错误是,
spring核心
模块与3.0.5
一起工作,其余模块与4.0.6
一起工作。此问题的解决方案取决于您的pom.xml及其spring库。
在maven中重新调整Springjar(包括和排除Springjar)可以解决这个问题
I added the following to resolve the mongo-db spring-data jar related issue.
<properties>
<spring.version>3.2.4.RELEASE</spring.version>
<spring.data.version>1.6.1.RELEASE</spring.data.version>
<spring.core.version>4.1.4.RELEASE</spring.core.version>
</properties>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.core.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>4.1.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>${mongo.driver.version}</version>
</dependency>
<dependency>
<groupId>org.jongo</groupId>
<artifactId>jongo</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>${spring.data.version}</version>
</dependency>
我添加了以下内容来解决mongo db spring数据jar相关问题。
3.2.4.1发布
1.6.1.1发布
4.1.4.1发布
org.springframework
弹簧网
${spring.version}
org.springframework
弹簧芯
org.springframework
春豆
org.springframework
spring上下文
org.springframework
春季aop
org.springframework
弹簧芯
${spring.core.version}
org.springframework
春季aop
4.1.4.1发布
org.mongodb
mongo java驱动程序
${mongo.driver.version}
org.jongo
琼戈
1.1
org.springframework.data
spring数据mongodb
${spring.data.version}
正如曼努埃尔·乔丹所说,这是因为版本不同。我刚刚得到这个错误,并通过在我的每个模块中设置相同版本的org.springframework:springcore来解决它
我的项目结构如下:
projectname
module1
module2
module3
我在模块2下编写了一个测试:
projectname
module1
module2
src
test
< my package >/TestClass.java
module3
在确保每个模块都具有相同版本的org.springframework:spring core依赖项后,运行测试。已经发布的答案是正确的。此问题是由依赖项版本中的冲突引起的。我认为解决这些问题的最快方法是使用插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.4.1</version>
<configuration>
<rules><dependencyConvergence/></rules>
</configuration>
</plugin>
org.apache.maven.plugins
maven enforcer插件
1.4.1
使用mvn enforcer:enforce命令运行它。您将得到一个限制依赖项列表。检查具有最低版本的某些依赖项的库,并降级其他依赖项。这是一个缓慢的过程,所以耐心点在一个项目中混合使用Spring版本是不明智的,Spring核心模块使用3.0.5,其余模块使用4.0.6。是的。。通过添加正确的依赖项获得了它。。感谢您的回复检查回复解决方案。此解决方案对我有效。确保您只有一个版本的Spring。