一尘不染

Java 1.8 ASM ClassReader无法解析类文件-可能是由于尚不支持新的Java类文件版本

java

我的Web应用程序在JDK 1.7上运行良好,但在1.8下崩溃,但出现以下异常(在使用Jetty 8启动应用程序服务器期间)。我正在使用Spring版本:3.2.5.RELEASE。

例外:

org.springframework.core.NestedIOException: ASM ClassReader failed to parse class file - probably due to a new Java class file version that isn't supported yet

我认为该问题是由于spring和依赖它的“ asm.jar”库而发生的。

我该如何解决?


阅读 631

收藏
2020-03-22

共1个答案

一尘不染

正如@prunge和@Pablo Lozano所说,如果要将代码编译为Java 8(-target 1.8),则需要Spring 4,但是如果在Spring 3.2.X上运行,则仍可以在编译为Java 7的Java 8上运行应用程序。

查看 http://docs.spring.io/spring/docs/current/spring-framework-reference/html/new-in-4.0.html

注意,从Spring Framework 4.0开始,仅完全支持Java 8字节码级别(-target 1.8,-source 1.8要求)。特别是,即使恰好将基于Spring 3.2的应用程序部署到Java 8运行时中,也需要使用最多Java 7作为目标进行编译。请针对基于Java 8的应用程序升级到Spring 4。

2020-03-22