Discuss / Java / 命令行运行jvm发现爆出编译和运行版本不一致问题

命令行运行jvm发现爆出编译和运行版本不一致问题

Topic source

细水静流

#1 Created at ... [Delete] [Delete and Lock User]
使用文章上的命令行进行手动操作,可以正常的编译,但是使用jvm运行class文件的时候爆出了编译版本高于运行版本。但是jre是和jdk一起下载下来的啊,应该如何解决?

 LoggerClass has been compiled by a more recent version of the Java Runtime (class file version 62.0), this version of the Java Runtime only recognizes class file versions up to 52.0

        at java.lang.ClassLoader.defineClass1(Native Method)

        at java.lang.ClassLoader.defineClass(Unknown Source)

        at java.security.SecureClassLoader.defineClass(Unknown Source)

        at java.net.URLClassLoader.defineClass(Unknown Source)

        at java.net.URLClassLoader.access$100(Unknown Source)

        at java.net.URLClassLoader$1.run(Unknown Source)

        at java.net.URLClassLoader$1.run(Unknown Source)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.net.URLClassLoader.findClass(Unknown Source)

        at java.lang.ClassLoader.loadClass(Unknown Source)

        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

        at java.lang.ClassLoader.loadClass(Unknown Source)

        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)

廖雪峰

#2 Created at ... [Delete] [Delete and Lock User]

你在IDE编译用的是IDE内置的jdk

机器里装最新的jdk 21

细水静流

#3 Created at ... [Delete] [Delete and Lock User]

谢谢老师,已经解决了!


  • 1

Reply