由于JDK一般是向下兼容的,所以有时候本地的JDK版本比类库的版本低,往往会抛出java.lang.UnsupportedClassVersionError: Bad version number in .class file。
有时候需要确认到底是哪个类的版本低。所以需要确认类的编译JDK的版本。
可用二进制编辑工具打开类文件,会有以下的显示:
CA FE BA BE 00 00 00 32.....
而上面的32是编译这个类的JDK版本,32表示是50,是JDK1.6;31表示49,是JDK1.5;30表示48,是JDK1.4......依次类推。
如编译上面的类的JDK为JDK1.6。所以你在环境是JDK1.6以下的引用这个类,就会抛出版本不对的异常。
分享到:
相关推荐
class识别jdk版本 jdk版本 class识别jdk版本 jdk版本
在 JDK 1.8 版本中,开发者们有时需要查看已编译的`.class`文件的源代码,以便理解其内部工作原理或进行调试。这时,就需要用到反编译工具。反编译是从已编译的字节码文件(.class文件)还原出类似源代码的形式,...
达梦数据库驱动是Java应用程序连接达梦数据库的关键组件,有针对不同JDK版本的特定版本。正确选择和使用这些驱动,可以确保你的Java应用能高效、稳定地与达梦数据库进行交互。同时,了解JDBC驱动的分类和工作原理,...
随着JDK版本的升级,ProGuard也需要不断更新以支持最新的语言特性。标题中的"proguard支持JDK 1.8"意味着ProGuard已经能够处理使用JDK 1.8语法编写的Java代码。 **1. ProGuard的核心功能** - **混淆**:ProGuard...
标题中的“jdk双版本.zip”表明这是一个包含两个不同平台版本的Java Development Kit(JDK)的压缩文件。JDK是Java编程语言的核心组件,它提供了编译、调试和运行Java应用程序所需的所有工具和库。 首先,我们来看...
有了Linux ARM版本的JDK,开发者可以使用`javac`命令编译源代码,生成字节码(.class文件)。然后,使用`java`命令执行这些字节码,运行Java应用程序。在嵌入式系统和物联网设备中,这特别有用,因为Java的“一次...
在本文中,我们将深入探讨如何在使用JDK 1.6版本的环境下,将Spring Boot与JSP(JavaServer Pages)进行有效整合。Spring Boot以其便捷的“开箱即用”特性深受开发者喜爱,但默认情况下它并不直接支持JSP视图解析。...
在这个场景中,我们关注的是JDK的第21个版本,且是专为64位Windows操作系统设计的。这个压缩包文件"jdk21_64位_windows版本.rar"包含了在Windows系统上安装和使用JDK 21所需的所有组件。 JDK的核心功能包括Java...
这个版本,即"jdk-8u161-windows-x64",是专为64位Windows操作系统设计的。Java JDK包含了许多组件,其中最重要的是Java编译器(javac)、Java解释器(java)、Java虚拟机(JVM)以及Java类库,这些使得开发者能够...
这个免安装版本的JDK 1.7意味着它是一个便携式的版本,用户只需将其解压缩到任意位置,无需通过传统安装程序来设置环境变量和路径。 1. **JDK的组成部分** - **javac**:Java编译器,将源代码编译成字节码。 - **...
org.springframework.core.JdkVersion 于是找到一个spring-core-3.x.RELEASE.jar,用其中的JdkVersion这个类替换spring-2.5.5.jar对应class,问题解决! 注意:别用spring-core-4.x.RELEASE.jar,JdkVersion....
JDK 11.0.2是Java 11的一个稳定版本,包含了Java运行时环境(JRE)、Java编译器(javac)、Java调试器(jdb)以及其他必要的开发工具。在这个版本中,开发者可以享受到一系列增强的功能和改进,以提升开发效率和程序...
标题中的"tomcat6.0.48+jdk1.7或jdk1.8或jdk1.6"指的是一个配置环境,其中Tomcat是Apache软件基金会的一个开源Java Servlet容器,版本为6.0.48,它主要用于部署和运行Java Web应用程序。而JDK(Java Development Kit...
标题:“jdk1.5 windows版本 64位” 描述:“jdk1.5 windows版本 64位,Java开发依赖环境” 标签:“windows” 在这个主题中,我们聚焦的是Oracle JDK 1.5(也被称为Java Development Kit,简称JDK)在Windows...
**Java Development Kit (JDK) 1.7 版本详解** Java Development Kit,简称JDK,是Oracle公司提供的用于开发和运行Java应用程序的核心工具集。JDK 1.7,也被称为Java 7,是Java平台的一个重要版本,包含了Java...
于是找到一个spring-core-3.x.RELEASE.jar,用其中的JdkVersion这个类替换spring-2.5.5.jar对应class,问题解决! 注意:别用spring-core-4.x.RELEASE.jar,JdkVersion.isAtLeastJava15()方法已经没有了!
Java 编译器(javac):用于将 Java 源代码编译成 Java 字节码,也就是 .class 文件。 Java 虚拟机(JVM):负责解释执行 Java 字节码,并将其转换为特定硬件平台的机器码。 Java 运行时环境(JRE):包含 Java ...
版本:jdk1.8 适用于java开发的jar包 jdk1.8新特性 Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可。 新增lambda表达式 提供函数式接口 Java 8 允许你使用关键字来传递方法或者构造...
本文将深入探讨JDK 1.7版本,特别是针对Mac OS X系统的`jdk-7u80-macosx-x64`版本。 ### JDK 1.7概述 JDK 1.7,也被称为Java SE 7(Java Standard Edition 7),是Oracle公司在2011年发布的Java平台版本。这个版本...
本篇文章将深入探讨JDK 1.8.0_212这一32位版本的相关知识点。 ### JDK 1.8的重要性 JDK 1.8,也被称为Java 8,是Java历史上的一个重大更新,引入了许多新特性,提升了开发效率并增强了性能。其中最显著的改进包括...