java - 等同于 JDK,但仍然“已由 Java 运行时的更新版本编译”
问题描述
我jdk1.8.0_221
用来编译(在 IntelliJ 中)。javac 1.8.0_191
我的服务器上有。
为什么我仍然收到错误的任何想法,例如:
Exception in thread "main" java.lang.UnsupportedClassVersionError: pp/PP
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
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at pp.WebServer$.main(WebServer.scala:16)
at pp.WebServer.main(WebServer.scala)
PS 工作解决方案与 Java 版本无关。见下文。
PS1 对于那些将问题标记为重复的人。其他问题是关于 Java 版本不同的情况。在我的情况下,当版本相等并解决它时,我遇到了一个错误,而 jdk 什么也不做。完全不同的情况。你应该更加细心。
解决方案
要在 IntelliJ 中解决此类问题,请执行以下操作:文件->项目结构->项目设置->模块
在最底部的“依赖项存储格式”中选择 -> Eclipse(.classpath) -> Apply
错误消失了。
推荐阅读
- hazelcast - Hazelcast 基于 HTTP 的健康检查行为
- visual-studio-code - 在 VSCode Latex Workshop 中指定要编译的文件
- android - 将 gradle 构建工具从 3.6.1 升级到 4.1.0 时,特权应用程序的 dlopen 失败
- elasticsearch - 如何在 Kibana 中为 field2 的唯一值获取 field1 的总和
- c# - DDD:如何从应用程序服务返回验证错误?
- php - 未知:在我的 Opencart 主题中不推荐使用 each() 函数
- html - 我是否需要在 html 文件中添加字体(与引导文件一起的文件)文件?
- r - 我如何通过多个变量重申
- javascript - 如何使用 Spring Boot 在服务器端调用 JavaScript 库?
- ansible - 如何以 Web UI 格式可视化 ansible-playbook 运行命令