首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LinkageError jdbc.datasource.DataSourceTransactionManager

LinkageError jdbc.datasource.DataSourceTransactionManager
EN

Stack Overflow用户
提问于 2013-07-16 17:15:08
回答 1查看 233关注 0票数 0

我有一个问题,这个链接错误,我们有相同的代码和工作的项目:

代码语言:javascript
复制
this.plateformTransactionManager = new DataSourceTransactionManager();
this.plateformTransactionManager.setDataSource(dataSource);
DefaultTransactionDefinition def = new DefaultTransactionDefinition();
def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);
TransactionStatus status = plateformTransactionManager.getTransaction(def);

运行时的堆栈跟踪:

代码语言:javascript
复制
java.lang.LinkageError: loader constraint violation: when resolving method org.springframework.jdbc.datasource.DataSourceTransactionManager.getTransaction(Lorg/springframework/transaction/TransactionDefinition;)  Lorg/springframework/transaction/TransactionStatus;" the class loader    (instance of  org/apache/catalina/loader/WebappClassLoader) of the current class, com/as24/referentiel/daos/ExternalUserDAO, and the class loader (instance of  rg/apache/catalina/loader/StandardClassLoader) for resolved class,  org/springframework/jdbc/datasource/DataSourceTransactionManager, have different Class Objects for the type org/springframework/transaction/TransactionDefinition used in the Signature

我读到这是一个maven依赖错误,但我们只在3.0.7.REALEASE版本上使用了Spring

我在网上找不到任何汤...

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-16 17:22:34

这是服务器和web应用程序之间共享库的问题。

在java中,类由它的名称(包括包名)和它的类加载器(加载它)来标识。因此,如果您在web应用程序WEB-INF/classes中和${catalina.home}/lib中具有相同的MyBean.class,则它们将被视为两个不同的类(即myBean instanceof MyBean == false)。当某些类在其方法签名中使用类XYZ,并且XYZ由与当前类加载器已知的类XYZ不同的类加载器加载时,则引发LinkageError

你的问题是,你有Spring依赖(至少spring-tx)在共享/系统类加载器上,也在web应用依赖中。

要解决您的问题,您需要执行以下操作之一:

  • 从服务器中删除Spring依赖项class-loaders
  • remove web应用程序中的重复依赖项(在POM中将其标记为provided依赖项)
  • endorsed类加载器上添加重复依赖项(通过该web应用程序,类加载器将忽略web应用程序Spring
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17672517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档