相关疑难解决方法(0)

spring-core 3.2.9 + java 8

我们已经使用spring 3.2.9将项目升级到java 8.一旦我们开始使用java 8功能,spring将不再启动(请参阅下面的堆栈跟踪).

我试图排除asm的旧用法并包含以下依赖项:

<dependency>
    <groupId>org.ow2.asm</groupId>
    <artifactId>asm</artifactId>
    <version>5.0.3</version>
</dependency>
<dependency>
    <groupId>org.ow2.asm</groupId>
    <artifactId>asm-util</artifactId>
    <version>5.0.3</version>
</dependency>
<dependency>
    <groupId>org.ow2.asm</groupId>
    <artifactId>asm-commons</artifactId>
    <version>5.0.3</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

但它并没有解决问题.有没有人知道如何解决这个问题?

不幸的是我们无法升级到spring 4,因为我们使用了一些依赖项,这会使升级非常耗时.

Offending resource: class path resource [xxxx/context-test.xml]; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: file [xxxxx.class]; nested exception is java.lang.IllegalArgumentException: INVOKESPECIAL/STATIC on interfaces require ASM 5
    at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)
    at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85)
    at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:76)
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:256)
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseDefaultElement(DefaultBeanDefinitionDocumentReader.java:207)
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:192)
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:139)
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:108)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:493)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209)
    at …
Run Code Online (Sandbox Code Playgroud)

spring java-8

17
推荐指数
2
解决办法
2万
查看次数

使用Java 8的Spring 3.2.x.

我们目前正在使用spring 3.2.9.我们正在考虑将其升级到更新版本.当我检查文档时,它说明了这一点

与4.0 M1一起,我们发布了Spring Framework 3.2.3,其中包含针对最近报告的问题的修复,但也提供了OpenJDK 8运行时支持.对于针对JDK 7(使用-target 1.7)或更早版本编译的应用程序,Spring Framework 3.2.x将支持在JDK 8运行时上进行部署.

这是否意味着我无法在Java 8上编译?
如果我想用Java 8编译,我应该使用Spring 4.0.x版吗?

java spring version java-8

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

java-8 ×2

spring ×2

java ×1

version ×1