关于Unsupported major.minor version 52.0报错问题解决方案

2023-11-07

目录

1.问题描述

在启动项目工程中,当编译class文件的时候会报错一个 java.lang.UnsupportedClassVersionError: org/apache/activemq/ActiveMQConnectionFactory : Unsupported major.minor version 52.0错误,如图。
这里写图片描述
这个问题既不是代码出错,也不是内存问题,更不是系统抽筋,通常导致很多朋友花费大量时间都不能愉快解决,笔者将这个疑问分享到博客为更多朋友解惑。

2.问题分析

首先,理解java.lang.UnsupportedClassVersionError异常,该异常位于java.lang包下,说明是Java编程的基础类异常,UnsupportedClassVersionError顾名思议,Class类版本不支持错误,既然是版本问题,不外乎就是项目编译Class的JDK版本环境与运行的虚拟机JDK版本环境不一致导致(了解虚拟机原理更容易理解这点),现在问题集中于编译环境与运行环境两个版本谁高谁低。没事,我们再往下分析,根据错误信息还透露出Unsupported major.minor version 52.0,其中version 52.0正是对应了JDK1.8的版本。当然,也可以用java -version命令查看安装JDK版本。说明我们编译环境的JDK是1.8版本,再查到我们的工程环境下,发现工程下的JDK版本为JDK1.7(也许是1.6或1.5等,这里以1.7为例)。
类文件对应的版本如下列表:

JDK版本 序号
Java SE 10 54 (0x36 hex)
Java SE 9 53 (0x35 hex)
Java SE 8 52 (0x34 hex)
Java SE 7 51 (0x33 hex)
Java SE 6.0 50 (0x32 hex)
Java SE 5.0 49(0x31 hex)
JDK 1.4 48 (0x30 hex)
JDK 1.3 47 (0x2F hex)
JDK 1.2 46 (0x2E hex)
JDK 1.1 45 (0x2D hex)

3.解决方案

分析了怎么多,解决方式就简单了,最终目的是让两个环境一致即可解决。一种方式重新安装低版本JDK1.7,另一种方式是改变工程环境中为JDK1.8版本。
第一种不说了,一般情况也不会重装JDK,重点说下第二种方式。

步骤一:删除JDK1.7版本

鼠标右键工程,打开Java Build Path目录,选择JDK1.7的版本,点击Remove按钮将旧版本删除,如图:
这里写图片描述

步骤二:导入JDK1.8版本

找到JDK1.8的安装目录,将jre目录文件导入到Standard VM中,如图:
这里写图片描述

步骤三:将新的JDK1.8引入到工程中

与平常引用一样,在Add Library选项下选取新的JDK环境,如图:
这里写图片描述

4.总结

这个问题本身不难,关键在于对Java基础要有一定的深度了解。再运用现有的知识逐步推理,顺藤摸瓜,找到问题关键所在。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于Unsupported major.minor version 52.0报错问题解决方案 的相关文章

  • SLF4J - Logback:如何在运行时配置记录器?

    我们在项目中使用 LogBack 我想根据一些数据库值配置记录器 即如果某个数据库值设置为 true 则记录器应同时使用文件和数据库附加程序 如果为 false 则记录器必须仅使用数据库附加程序 我还想保留使用静态最终记录器 因此我不会在每
  • 如何从 AccountManager.getAccounts() 获取与特定帐户关联的图标

    每个帐户的帐户设置中都会显示一个图标 对于 Google 帐户有一个图标 对于 Facebook 帐户有另一个图标 有没有办法从应用程序的代码中获取该图标 最后我解决了 private Drawable getIconForAccount
  • 如何使用 Apache Camel 路由从授权服务器获取访问令牌?

    我有一个授权服务器 带有注释的简单类 SpringBootApplication RestController Configuration EnableAuthorizationServer oauth2 security 在端口上运行80
  • Android 背景 + 文本 + 按钮图标

    我想要一个图像设置为文本的背景 并在文本的左侧设置一个图标 在iPhone中非常简单 但不知道如何在Android上做到这一点 调整按钮的大小并保持图标 文本的位置和距离正确 iPhone 安卓我有这个 xml代码是
  • com.google.gwt.dev.jjs.InternalCompilerException:访问期间出现意外错误

    我在使用版本 2 6 0 编译 gwt 应用程序时遇到以下错误 最初我用 gwt 版本 2 6 1 的 maven 编译它 然后尝试通过版本 2 6 0 的 eclipse 编译它 跟版本兼容有关系吗 com google gwt dev
  • SwingWorker 在 Unsafe.park() 处挂起

    我有一个SwingWorker与后台服务器通信 然后更新JFrame 我正在调试我的应用程序并注意到即使在SwingWorker完成了它的工作 它的线程仍然存在 它挂在Unsafe park java lang Object 这是一个本机方
  • UiBinder 中的 gwt 按钮

    我需要创建一个按钮 所以它是一个带有图像的按钮 gwt with UiBinder 但我不确定如何进行 这是我的ui xml code
  • 用dagger 2查看依赖注入

    我有一个自定义视图扩展TextView 我应该在哪里调用我的组件来注入视图 component inject customTextView 因此 我发现我需要在自定义视图的构造函数中添加注入 在所有视图中 或者使一个调用另一个 Exampl
  • 如何在Android Studio中关联.mp3文件

    我想根据列表视图项单击播放 mp3 文件 但是根据我的代码 我运行我的应用程序 出现此窗口 因此由于缺少音频选项 我真的不知道需要选择其中哪一个为了关联我的 mp3 文件 mainList setOnItemClickListener ne
  • 在java中将jpeg/png转换为像素数组

    如何将包含 jpeg 或 png 的字符串转换为像素数组 最好是一维 理想情况下使用java内置的类 原来你需要公共文件上传 http commons apache org fileupload 看着那 这用户指南 http commons
  • 使用 java.nio.file.Paths 接口时缺少方案(IllegalArgumentException)

    这是一个非常简单的java问题 我在 Linux 系统上使用 Java 8 和 eclipse kepler 我一直在尝试尝试NIO 2 我的代码是 package lucasTest import java io IOException
  • 如何从 REstAssured 中的 Json 数组获取 JSON 对象

    任何人都可以帮我解决这个场景 我是新来的RestAssured和处理JSON在我们的自动化脚本中 我有一个API谁的回应是JSONArray i e id 1002 entity testcase fieldName TextName di
  • Hibernate3:自引用对象

    需要一些帮助来了解如何执行此操作 我将在文件系统上运行递归 查找 并且希望将信息保留在单个数据库表中 具有自引用的层次结构 这是我想要填充的数据库表结构 目录对象表 id int NOT NULL name varchar 255 NOT
  • Spark toLocalIterator 和迭代器方法之间的区别

    在编写 Spark 程序时我遇到了这个toLocalIterator 方法 之前我只使用iterator method 如果有人曾经使用过这种方法 请点亮 我在使用时遇到foreach and foreachPartitionSpark程序
  • 获取运行时生成的类的字节

    我正在使用一个 Java 框架 该框架使用自定义类加载器在运行时生成一些 代理 类 我想为任何这样的类获取自定义 ClassLoader 从 loadClass 返回的与该类对应的原始字节数组 这可能吗 我知道 如果一个类作为资源存在 那么
  • Spring Data elasticsearch @Query 注解嵌套对象

    我有两节课 Document public class PracticeQuestion private int userId private List
  • Java字符串中的字符数[重复]

    这个问题在这里已经有答案了 可能的重复 Java 使用unicode上划线显示平方根时字符串的长度 https stackoverflow com questions 7704426 java length of string when u
  • 如何根据服务器/环境动态加载服务器配置?

    目前 我设置了 Maven 配置文件 以便能够为不同的环境 开发 演示 暂存 生产等 部署我的项目 并且它工作得很好 但问题是 对于我拥有的每个模块 Web 应用程序 我需要复制 粘贴此配置文件 它们都是属性文件 当我需要更改环境 服务器配
  • Java可以进行进程监控吗?

    是否可以用Java编写一个在托盘中运行的应用程序 并且当启动某个应用程序时 它可以检测到它 我想对某些程序执行此操作 以了解我每周使用它们多长时间 我是 Java 新手 所以我不知道 Java 是否是最适合此操作的语言 或者它是否具有对操作
  • 如何更改MultipartFile的originalFilename

    我在服务器端有一个 MultipartFile 文件 我想更改该文件的原始文件名 但该类仅支持 getOriginalFilename 谁能帮我这个 PS 上传的是图片文件 多谢 您可以使用 MockMultipartFile 类更改名称

随机推荐

  • 我的世界1.12 Java崩溃,救救孩子!1.12.2游戏崩溃

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Minecraft Crash Report WARNING coremods are present Contact their authors BEFORE contacting forge
  • C语言经典100例题(26)--利用递归方法求5!(通俗易懂)

    目录 题目 问题分析 代码 运行结果 题目 利用递归方法求5 问题分析 函数的递归调用最基本的思想就是 大事化小 5 5 4 5 5 4 3 5 5 4 3 2 5 5 4 3 2 1 每层分离出来最大的那个数 定义一个求阶乘的函数 fac
  • 2023前端面试题及答案整理(浏览器)

    浏览器 cookie 与 本地存储 相关 cookie session localStorage 分别是什么 cookie 是存储在浏览器上的一小段数据 用来记录某些当页面关闭或者刷新后仍然需要记录的信息 用户在输入用户名密码提交给服务端
  • 企业微信网页应用开发 - 消息/事件回调接口

    问题描述 在事件格式 企业微信API中 有这么一句描述 当用户在客户端或管理端进行某种操作后 会回调相应的事件给开发者 通过API进行的操作不会产生回调 高亮那句是我想要的效果 只有用户在微信原生页面上的变更操作才需要及时通知 自己应用上
  • 决策树、随机森林结果可视化

    决策树 随机森林结果可视化 决策树随机森林结果可视化 一 决策树可视化环境搭建 二 决策树可视化的三种方法 第一种 第二种 第三种 三 决策树可视化实例 四 随机森林可视化实例 五 决策树各特征权重可视化 本文测试环境为 python3 一
  • css button阴影效果,css怎么给button设置阴影

    css给button设置阴影的方法 首先创建一个HTML示例文件 然后设置一个button按钮 最后通过给button添加 box shadow 等属性来实现阴影效果即可 本文操作环境 Windows7系统 HTML5 CSS3版 DELL
  • Scene窗口—视图控制栏

    Scene 视图控制栏 在 Scene 视图控制栏中可以选择用于查看场景的各种选项 还可以控制是否启用光照和音频 这些控件仅在开发期间影响 Scene 视图 对构建的游戏没有影响 绘制模式 Draw mode 菜单 绘制模式是 选择描绘场景
  • js弹框带传值父窗口给子框_layui 父页面获取弹窗传递的值 和 父页面传值给子弹窗的方法...

    1 父页面获取子页面 弹窗 的值 现在父页面页面加载方法中定义方法 专门用来获取从子页面的值 document ready function 拿到子窗口中传回的数据 function getChildrenData data console
  • 有奖调研

    桔妹导读 参与滴滴开源问卷调研 前100名有效填写问卷的用户可获得10元滴滴快车出行卡 第99位有效参与问卷的用户可额外获得100元滴滴快车出行卡一张 滴滴开源诚挚邀请您扫码参与开源问卷调研 给我们提出宝贵建议 长按二维码识别 填写问卷 关
  • DOS命令之copy:复制

    DOS 命令 copy 用于将一个文件从一个位置复制到另一个位置 以下是五个示例 说明了如何使用 copy 命令 1 复制文件到另一个目录假设我们有一个名为 test txt 的文件 它位于 C Users username Documen
  • 安全线程的集合

    1 CopyOnWriteArrayList package com kuang unsafe import java util import java util concurrent CopyOnWriteArrayList java u
  • Windows11安装kohya_ss详细步骤(报错、踩坑)

    文章目录 笔者环境 所需环境 安装kohya ss 方式一 带有GUI的kohya ss仓库 方式二 kohya ss核心仓库 题外话 笔者环境 OS windows11 Python 3 10 6 CUDA11 6 所需环境 Python
  • JavaEE初阶(5)多线程案例(定时器、标准库中的定时器、实现定时器、线程池、标准库中的线程池、实现线程池)

    接上次博客 JavaEE初阶 4 线程的状态 线程安全 synchronized volatile wait 和 notify 多线程的代码案例 单例模式 饿汉懒汉 阻塞队列 di Dora的博客 CSDN博客 目录 多线程案例 定时器 标
  • 云计算复习资料

    文章目录 第一章 云计算 一 云计算的概念与特征 1 云计算的概念 2 云计算的特征 3 云计算发展历程 二 云计算的服务类型 1 laaS 1 IaaS的核心技术 2 IaaS的服务优势 2 PaaS 1 PaaS的核心技术 2 PasS
  • SMOTE过采样技术原理与实现

    1 这种操作的原理是什么 目的是什么 目的是合成分类问题中的少数类样本 使数据达到平衡 其中 样本数量过少的类别称为 少数类 原理和思想 合成的策略是对每个少数类样本a 从它的最近邻中随机选一个样本b 然后在a b之间的连线上随机选一点作为
  • 正交矩阵的保范性:正交变换不改变向量的长度(范数)

    在推导使用SVD分解解方程时 用到了正交矩阵的保范性这一性质 1 正交矩阵定义 A mathbf A intercal A A A A
  • QT编程----事件(一)

    review ui 生成 h cpp文件 uic form1 ui o form1 h uic form1 ui i form1 h o form1 cpp C 三个特点 继承 重载 封装 QT程序设计进阶 事件 Qt事件 Qt程序是事件驱
  • JavaScript 根据指定年月获取该月的第一天和最后一天、获取上个月的年月、上个月月底日期

    文章目录 根据指定年月获取该月的第一天和最后一天 获取上个月的年月 上个月月底日期 根据指定年月获取该月的第一天和最后一天 let date new Date let new year date getFullYear 取当前的年份 let
  • Spring内置定时器的使用

    1 Spring内置定时器的使用 在configuration配置类中 引入 EnableSchedule 开启定时器 编写定时器类 在定时方法中添加 Schedule注解 并且使用fixedDelay fixedRate cron表达式用
  • 关于Unsupported major.minor version 52.0报错问题解决方案

    目录 1 问题描述 2 问题分析 3 解决方案 步骤一 删除JDK1 7版本 步骤二 导入JDK1 8版本 步骤三 将新的JDK1 8引入到工程中 4 总结 1 问题描述 在启动项目工程中 当编译class文件的时候会报错一个 java l