首页 > 编程语言 >this version of the Java Runtime only recognizes class file versions up to 52.0

this version of the Java Runtime only recognizes class file versions up to 52.0

时间:2023-06-19 21:45:51浏览次数:66  
标签:文件 Java versions 版本号 up 编译器 版本 SE

在 SAP Commerce Cloud Backoffice 做 full indexing 时,遇到错误消息:

ERROR: Error from server at https://localhost:8983/solr: Error CREATEing SolrCore 'master_backoffice_backoffice_product_flip': Unable to create core [master_backoffice_backoffice_product_flip] Caused by: de/hybris/platform/solr/search/MultiMaxScoreQParserPlugin 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
25.05.2023 11:57:49: ERROR: Executing indexer worker as an admin user failed:

有人说是本地 jdk 版本的问题,但我装的确实是 jdk 17:

https://answers.sap.com/questions/13784006/dehybrisplatformsolrsearchmultimaxscoreqparserplug.html

最后发现原因是我把 sap machine 下载到本地后,只是将其 bin 文件目录指定到了 path 环境变量下面:

正规的操作流程:

  1. Add the System variable JAVA_HOME and set it to the root directory of the extracted archive (e.g. C:<...>\sapmachine-jdk-11.0.3)

  2. Edit the System variable PATH and add %JAVA_HOME%\bin to the PATHvariable

"java class file version 55.0" 是指Java编译器生成的Java类文件的版本号。每个Java类文件都有一个与之关联的版本号,用于指示该类文件是使用哪个Java编译器版本编译的。

Java类文件版本号采用了一种命名约定,它由两个数字组成,分别表示主版本号和次版本号。例如,"55.0" 表示主版本号为55,次版本号为0。在Java中,主版本号通常与Java编译器的版本号相关联。

下面我将详细解释"java class file version 55.0" 的含义以及与Java编译器版本的关系。

  1. 版本号的结构和含义:
    Java类文件版本号由两个数字组成,如 "55.0"。这两个数字的含义如下:
  • 主版本号:主版本号表示Java编译器的版本。较高的主版本号通常意味着使用了更新的Java编译器和语言特性。主版本号的变化通常伴随着Java平台的重大改进和新功能的引入。

  • 次版本号:次版本号表示Java类文件的格式版本。次版本号的变化通常表示类文件格式的微小改变,如修复了一些错误或进行了一些优化。

版本号的命名约定遵循一定的规则。主版本号通常是向后兼容的,也就是说,较新版本的Java编译器可以编译较旧版本的Java类文件。然而,较旧版本的Java编译器可能无法编译较新版本的Java类文件。

  1. Java编译器和版本对应关系:
    Java类文件版本号与Java编译器版本存在一定的对应关系。不同的Java编译器版本会生成不同版本的类文件。
  • Java SE 1.1:版本号 45.0
  • Java SE 1.2:版本号 46.0
  • Java SE 1.3:版本号 47.0
  • Java SE 1.4:版本号 48.0
  • Java SE 5:版本号 49.0
  • Java SE 6:版本号 50.0
  • Java SE 7:版本号 51.0
  • Java SE 8:版本号 52.0
  • Java SE 9:版本号 53.0
  • Java SE 10:版本号 54.0
  • Java SE 11:版本号 55.0
  • Java SE 12:版本号 56.0
  • Java SE 13:版本号 57.0
  • Java SE 14:版本号 58.0
  • Java SE 15:版本号 59.0
  • Java SE 16:版本号 60.0
  • Java SE 17:版本号 61.0

可以看到,每个Java编译器版本都与一个特定的类文件版本号相关联。因此,当使用特定版本的Java编译器编译Java源代码时,生成的

类文件将带有与该编译器版本相对应的版本号。

  1. 版本号的重要性:
    类文件版本号的重要性在于确保兼容性和正确的运行环境。较新版本的Java编译器通常支持更多的语言特性和功能,因此使用较新版本的编译器可以更好地利用Java语言的新功能。

另一方面,确保类文件与运行环境兼容也很重要。如果将使用较新版本编译的类文件部署到较旧版本的Java运行环境中,可能会出现不兼容的情况。因此,在选择Java编译器版本时,需要考虑目标运行环境的兼容性。

总结:
"java class file version 55.0" 表示Java类文件的版本号,其中主版本号为55,次版本号为0。该版本号与Java编译器的版本相关联,用于指示类文件是使用哪个版本的Java编译器生成的。不同的Java编译器版本会生成不同版本的类文件,因此在选择Java编译器版本时需要考虑兼容性和所需的语言特性。了解类文件版本号的含义和与编译器版本的对应关系可以帮助开发人员正确选择和管理Java代码和运行环境。

标签:文件,Java,versions,版本号,up,编译器,版本,SE
From: https://www.cnblogs.com/sap-jerry/p/17492272.html

相关文章

  • 第一届赣网杯网络安全大赛 2020GW-CTF Misc_Writeup
    目录签到CheckinfaceDestroyJavaHidepig签到Checkinflag{welc0me_to_ganwangbei}faceLennyfuckinterpreterhttps://github.com/Knorax/Lennyfuck_interpreter跟着对照表替换即可++++++++++[->++++++++++<]>++.++++++.<+++[->---<]>--.++++++.<++++[->++++<......
  • 在JavaScript中实现Promise对象
    classPromise2{#status='pending'constructor(fn){this.q=[]constresolve=(data)=>{this.#status='fulfilled'constf1f2=this.q.shift()if(!f1f2||!f1f2[0])returnconstx=f1f2[0].ca......
  • BUUCTF NewStarCTF 公开赛赛道Week2 Writeup
    文章目录WEEK2WEBWord-For-You(2Gen)IncludeOneUnserializeOneezAPIMISCYesecnodrumsticks2Coldwinds'sDesktop奇怪的二维码qsdz'sgirlfriend2WEEK2WEBWord-For-You(2Gen)题目描述哇哇哇,我把查询界面改了,现在你们不能从数据库中拿到东西了吧哈哈(不过为了调试的代码似乎忘......
  • Java 中 HashMap 初始化时赋值 匿名类
    Java中HashMap初始化时赋值匿名类https://www.shuzhiduo.com/A/kjdwWMPOdN/1、HashMap初始化的文艺写法HashMap是一种常用的数据结构,一般用来做数据字典或者Hash查找的容器。普通青年一般会这么初始化:HashMap<String,String>map=newHashMap<String,String>();map......
  • 2020祥云杯网络安全大赛 MISC Writeup
    文章目录签到进制反转到点了xixixi带音乐家CharlesSensor签到PSC:\Users\Administrator>php-r"var_dump(base64_decode('ZmxhZ3txcV9ncm91cF84MjY1NjYwNDB9'));"string(24)"flag{qq_group_826566040}"进制反转题目描述:电脑中到底使用的是什么进制呢?真是麻烦,有时候还是手机......
  • 2020全国大学生网安邀请赛暨第六届上海市大学生网安大赛Misc-Writeup
    文章目录签到pcappcapanalysis可乐加冰除了签到所有Misc题以上线到BMZCTF平台方便大家复现BMZCTF:http://bmzclub.cn/challenges签到{echo,ZmxhZ3t3MzFjMG1lNX0=}|{base64,-d}|{tr,5,6}Linux下直接运行即可flag{w31c0me6}pcapchallenge2.pcapng根据提示查看dnp3协议,以长度为排......
  • 2020 第四届强网杯 线上赛Misc_Writeup
    目录upload签到问卷调查miscstudyupload下载附件,打开是流量包文件,wireshark打开查看http的包,追踪一下很明显是POST上传的图片File->ExportObject->HTTP...将文件Saveall保存出来,得到如下:%5c有提示steghide隐藏steghide.php用notepad++打开去掉前面这四行,保存修改后缀为jpg或......
  • BUUCTF:[ACTF2020 新生赛]Upload
    题目地址:https://buuoj.cn/challenges#[ACTF2020%20%E6%96%B0%E7%94%9F%E8%B5%9B]Upload图片马,filename改为.phtmlhttp://7f46d4ae-8320-44f5-a608-db84399f39e5.node3.buuoj.cn/uplo4d/0094153d9fd2e4a052850a6d656cefb6.phtml......
  • BUUCTF:[极客大挑战 2019]Upload
    题目地址:https://buuoj.cn/challenges#[%E6%9E%81%E5%AE%A2%E5%A4%A7%E6%8C%91%E6%88%98%202019]UploadPOST/upload_file.phpHTTP/1.1Host:b40c1d53-d3d6-43be-9f6d-67c767946f8c.node3.buuoj.cnUser-Agent:Mozilla/5.0(WindowsNT10.0;Win64;x64;rv:82.0)Gecko/2010......
  • Java Lambda 表达式
    Java8引入了Lambda表达式,这是一项令人激动的功能,它为Java开发人员提供了一种简洁而强大的编码方式。本文将深入探讨JavaLambda表达式的概念、语法和使用方法,帮助你充分理解这一重要的特性。简介Lambda表达式是一种匿名函数,它可以作为方法参数传递,并且可以用来简化编写函数式接......