由于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版本
jdk1.8编译类文件反编译工具。使用方式:java -jar procyon-decompiler-0.5.30.jar ***.class -o c:\**
于是找到一个spring-core-3.x.RELEASE.jar,用其中的JdkVersion这个类替换spring-2.5.5.jar对应class,问题解决! 注意:别用spring-core-4.x.RELEASE.jar,JdkVersion.isAtLeastJava15()方法已经没有了!
org.springframework.core.JdkVersion 于是找到一个spring-core-3.x.RELEASE.jar,用其中的JdkVersion这个类替换spring-2.5.5.jar对应class,问题解决! 注意:别用spring-core-4.x.RELEASE.jar,JdkVersion....
jdk1.6和jdk1.7免安装绿色版下载,配置系统的系统变量后即可使用(系统变量配置方法:https://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html)
如果是在JDK8下跑,会报错: org.springframework.beans.NotWritablePropertyException: Invalid property 'URIType' of bean class ...支持jdk8版本dubbo-admin,直接压缩放到tomcat下
版本:jdk1.8 适用于java开发的jar包 jdk1.8新特性 Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可。 新增lambda表达式 提供函数式接口 Java 8 允许你使用关键字来传递方法或者构造...
支持jdk1.2 jdk1.3 jdk1.4 jdk1.5 jdk1.6 支持目录对目录 支持直接双击class文件看源代码
因本人使用的JDK1.8,测试可用,高版本JDK暂未测试。 使用步骤:beyond compare的菜单--工具(tools)--- 导入设置(import settings)导入即可. 将jar包或class文件拖放对比的时候,在对比窗口上选择编译方式为Java...
由于JDK8把ODBC驱动删除了,因此连接access等一些数据库时需要手动下载驱动,这里一起贴上来 public class AccessConnectTest { private static DateFormat df = new SimpleDateFormat("yyyy-MM-dd mm:ss"); ...
闲暇时写的小东西,路过的可以看看.查看class文件编译时使用的jdk版本.没技术含量,纯粹为了查看方便,使用UltraEdit一样可以看16进制来换算.
JavaToExe支持JDK1.7版本 class文件变成exe执行文件
版本 SE(J2SE),standard edition,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE。 EE(J2EE),enterpsise edtion,企业版,使用这种JDK开发J2EE应用程序,从JDK 5.0开始,改名为Java EE。 ME(J2ME)...
我们在自己的程序中,调用前辈们写好的这些Class,来作为我们自己开发的一个基础。当然,现在已经有越来越多的性能更好或者功能更强大的第三方类库供我们使用。一般来说,Java API的非I/O部分对于运行Java的所有平台...
jdk1.7_class文件结构分析,常量池分析;jdk1.7_class文件结构分析,常量池分析;
2021 年 9 月 JDK17 发布了,JDK17 是最新的一个 LTS 版本。所谓 LTS 版本就是可以得到至少八年产品支持的版本。从 2014 年的 JDK8,到 2018 年的 JDK11,再到 2021 年的 JDK17。 同时 Oracle 也调整了 LTS 版本的...
配置环境变量,vi /etc/profile,在文件最后添加配置 JAVA_HOME=/usr/local/java/jdk1.8.0_231/ JRE_HOME=/usr/local/java/jdk1.8.0_231/jre CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_...
注:下文中的 *** 代表文件名中的版本号。 # 【bcprov-jdk15on-***.jar中文文档.zip】 中包含: 中文文档:【bcprov-jdk15on-***-javadoc-API文档-中文(简体)版.zip】 jar包下载地址:【bcprov-jdk15on-***.jar...
JDK8,因为相比以往的JDK7、JDK5这些,JDK8的生态很好,开发者使用起来也比之前的版本舒适,同时JDK8支持了几乎所有的开发功能需求,设计比较完善,JDK8也是迄今为止维护支持时间最长的版本。 JDK17: 使用JDK8开发...
原jocky1.0.3版(目前最新版)限制jdk版本最高为5.0,不支持现在的1.6、1.7等更高版本,现在我把某部分限制代码从class文件里面去除了,测试过可以用,更详细的说明在压缩包里面,希望有其他人能继续完善后续工作,...