我们正在升级到Spring 5和Hibernate 5以及Java 1.8。但是当我们这样做时,我们会得到LinkageError。
a
然后再低一点:
Caused by: java.lang.LinkageError: loading constraint violation when overriding method "org/springframework/cache/annotation/AnnotationCacheOperationSource$CacheOperationProvider.getCacheOperations(Lorg/springframework/cache/annotation/CacheAnnotationParser;)Ljava/util/Collection;" during creation of class "org/springframework/cache/annotation/AnnotationCacheOperationSource$$Lambda$210/000000001AD36180": loader "java/lang/InternalAnonymousClassLoader@1337bd9b" of class "org/springframework/cache/annotation/AnnotationCacheOperationSource$$Lambda$210/000000001AD36180" and loader "com/ibm/ws/classloader/CompoundClassLoader@d5b1949f" of class "org/springframework/cache/annotation/AnnotationCacheOperationSource$CacheOperationProvider" have different types for the method signature
at sun.misc.Unsafe.defineAnonymousClass(Native Method)
at java.lang.invoke.InnerClassLambdaMetafactory.spinInnerClass(InnerClassLambdaMetafactory.java:339)
at java.lang.invoke.InnerClassLambdaMetafactory.buildCallSite(InnerClassLambdaMetafactory.java:206)
at java.lang.invoke.LambdaMetafactory.metafactory(LambdaMetafactory.java:315)
at java.lang.invoke.MethodHandle.resolveInvokeDynamic(MethodHandle.java:841)
... 107 more
Related cause:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'serviceTarge' defined in ServletContext resource [/WEB-INF/app-config.xml]: Cannot resolve reference to bean 'txManager' while setting bean property 'transactionManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'txManager' defined in ServletContext resource [/WEB-INF/app-config.xml]: Cannot resolve reference to bean 'enoteSessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/app-config.xml]: Invocation of init method failed; nested exception is java.lang.BootstrapMethodError: java.lang.LinkageError: loading constraint violation when overriding method "org/hibernate/tool/schema/spi/DelayedDropRegistry.registerOnCloseAction(Lorg/hibernate/tool/schema/spi/DelayedDropAction;)V" during creation of class "org/hibernate/internal/SessionFactoryImpl$$Lambda$207/000000001B931600": loader "java/lang/InternalAnonymousClassLoader@1337bd9b" of class "org/hibernate/internal/SessionFactoryImpl$$Lambda$207/000000001B931600" and loader "com/ibm/ws/classloader/CompoundClassLoader@d5b1949f" of class "org/hibernate/tool/schema/spi/DelayedDropRegistry" have different types for the method signature
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:378)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:110)
我认为一个是另一个级联。有谁知道这可能导致什么?看起来像罐子的不匹配版本,但我无法弄清楚哪个。