运行 Java 应用程序时,JRE 版本必须与用于编译应用程序的 JDK 版本匹配或更高。
当尝试使用较低版本的 Java 运行高版本 JDK编译的应用程序时,就会抛出UnsupportedClassVersionError异常。

java.lang.UnsupportedClassVersionError: org/antlr/v4/Tool has been compiled by a
more recent version of the Java Runtime (class file version 55.0), this version
of the Java Runtime only recognizes class file versions up to 52.0

在本文中,我们将介绍如何通过JDK工具检查class的 JDK 版本。

Java版本号与major version

Java 在类文件中使用两位数字定义主版本号(major version)。以下是 Java 版本与major version的对照表:

JDK major version
Java 1.1 45
Java 1.2 46
Java 1.3 47
Java 1.4 48
Java 5(1.5) 49
Java 6(1.6) 50
Java 7(1.7) 51
Java 8 52
Java 9 53
Java 10 54
Java 11 55

javap 查看major version

JDK提供的工具javap可以获取一个类(.class)文件的各种详细信息,也包括class中定义的major version

下面是个简单的HelloWorld.java程序

public class HelloWorld {public static void main(String[] args) {System.out.println("Hello world!!");}
}

JDK编译后生成HelloWorld.class,就可以用javap查看生成的class中的major version

Linux:

javap -v HelloWorld.class | grep major

Windows:

javap -v HelloWorld.class | findstr major

如果你希望查看一个jar中的类的major version.
antlr-4.11.1-complete.jar 为例
Linux:

javap -v -cp /path/antlr-4.11.1-complete.jar org.antlr.v4.Tool | grep major

Windows:

javap -v /path/antlr-4.11.1-complete.jar org.antlr.v4.Tool | findstr major

-cp 即-classpath, 指定查找类文件的位置
org.antlr.v4.Tool 即为antlr-4.11.1-complete.jar中的一个类的完整名称

java:javap查看class文件的JDK版本塈JDK版本与major version(45~55)的对照表相关推荐

  1. java class 内容查看_015-JVM-使用javap查看class文件内容

    处理使用上面的工具还可以使用 javap 查看 class 文件的格式Microsoft Windows [版本 10.0.19041.685] (c) 2020 Microsoft Corporat ...

  2. javap查看class文件

    通过JVM编译java文件生成class字节码文件,很多时候很想用工具打开看看,目前还不清楚哪一个软件专门查看class文件的,但是通过windows下的javap命令可以查看详细的class文件 S ...

  3. java在线查看pdf文件,java 实现所有文件的在线查看(其他类型转pdf后用pdf.js显示)...

    js显示pdf插件demo下载: http://download.csdn.net/detail/heqinghua217/9685857 java 吧所有文档类文件转成pdf格式文件下载 http: ...

  4. javap 查看class文件的字节码命令用法

    https://blog.csdn.net/hantiannan/article/details/7659904

  5. linux在线安装JDK(1.8版本)图文详细版

    linux在线安装JDK,命令下载 在线下载JDK 命令: wget --no-check-certificate --no-cookies --header "Cookie: oracle ...

  6. Mac os 查看PDM文件

    Mac OS 没有查看PDM文件的工具,PowerDesigner只有windows版本,无Mac版,在Mac 上查看PDM文件非常不方便,或者装双系统,非常麻烦,现在有了ParsePDM工具,就不用 ...

  7. java怎么查看jdk版本_java版本和jdk版本必须一样

    1.首先需要检查你的系统是否安装了java环境,2.在"开始"==>"运行"==>输入"cmd"弹出命令窗口,在命令窗口中输入java或者javac ...

  8. java 如何查看jdk版本位数

    java 如何查看jdk版本&位数 CreateTime--2018年4月22日18:20:18 Author:Marydon 方式一:通过dos命令实现 win+R-->cmd--&g ...

  9. eclipse android或者Java应用查看jdk路径和版本与android studio查看jdk版本

    elipse IDE环境下jdk配置: eclipse -.> window ->preferences ->java -> Installed JRES 对于android工 ...

最新文章

  1. java集合类讲解视频,关于java:实实在在面试List和Map集合面试合集含讲解视频
  2. 怎样使用dhcp自动分配IP地址
  3. 从痴迷数据库SQL语句逐渐走进面向对象化(系统的核心以处理对象为主、淡化数据库概念)...
  4. Android四大组之ContentProvider
  5. qt为窗体部件设置阴影、类似日晕效果
  6. Shell入门(四)之数组
  7. 二分查找非递归方式实现
  8. aws lambda_带有API网关的AWS Lambda
  9. 港航环境变化引起的错误解决方法
  10. (飞鸽传书绿色版)网站
  11. grass gis怎么使用_使用GRASS GIS返回学校
  12. ADF12C+GLASSFISH4.1配置数据源
  13. 罗永浩直播首秀开卖小米 10;微信能转账 QQ;Ruby 2.7.1 发布 | 极客头条
  14. Icacls管理工具的使用
  15. 测试从业人员的职业规划
  16. 微信公众号获取管理素材列表的大坑-{errcode:40004,errmsg:invalid media type hint:}
  17. Unity 解决SpriteAtlas图集打包AssetBundle白图问题
  18. 微信会员php源码,基于ThinkPHP框架开发的在线微信拼车系统完整PHP源码-深蓝源码会员专享...
  19. qq浏览器tv版 v1.0 官方版
  20. 基于Vue+Express+Mysql开发的手机端电影购票系统(附源码)

热门文章

  1. cdn转发防攻击_cdn可以防止攻击吗
  2. 解决win10家庭高级版切换到Administrator用户后无法切换回原账户问题过程记录
  3. 苹果5更新系统无服务器,苹果5手机系统更新不了出现无法检查更新怎么处理
  4. React导入json数据
  5. 利用python进行数据处理
  6. 顺丰控股亏损:或时效件面临见顶危机,或下沉市场厮杀,或为220亿定增设局?
  7. CentOS搭建Jellyfin影音服务器
  8. 【转载】在Firefox国际版使用中国版账户
  9. win10亮度无法调节,怎么处理
  10. 如何禁用笔记本键盘输入?屏蔽掉笔记本键盘