如何回滚java.util.Map的版本?

如何回滚java.util.Map的版本?,java,maven,google-app-engine,Java,Maven,Google App Engine,任何有兴趣了解标准java对象版本和JDK版本之间的关系以及如何回滚java版本的人都应该知道这个问题 那么:如何回滚java.util.Map对象的版本?我肯定我还必须回滚其他对象 我试着按照这些指示去做( ),当我尝试让maven运行我的本地服务器或部署到云应用引擎时,我会看到如下错误: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-co

任何有兴趣了解标准java对象版本和JDK版本之间的关系以及如何回滚java版本的人都应该知道这个问题

那么:如何回滚java.util.Map对象的版本?我肯定我还必须回滚其他对象

我试着按照这些指示去做( ),当我尝试让maven运行我的本地服务器或部署到云应用引擎时,我会看到如下错误:

[ERROR] Failed to execute goal
org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile
(default-compile) on project backend: Compilation failure [ERROR]
  C:\Users\bensw\AndroidStudioProjects\firebase-appengine-backend\src\main\java\com\google\cloud\solutions\flexenv\common\LogEntry.java:[23,17]
cannot access java.util.Map [ERROR]   bad class file:
/modules/java.base/java/util/Map.class [ERROR]     class file has
wrong version 55.0, should be 53.0 [ERROR]     Please remove or make
sure it appears in the correct subdirectory of the classpath.
我在这里找到了一些关于这个话题的帖子,但我不确定如何将这些答案应用到这种情况。我没有使用IntelliJ,我也不确定我需要更改什么SDK

我试着切换回Java6,基于一个猜测,Java6有正确的Map.class版本,但令我惊讶的是,这不起作用

谢谢,
Ben

尝试使用Java8而不是Java11

  • 安装OpenJDK 8
    sudo apt install openjdk-8-jdk
    
  • 确保您使用的是正确的Java版本。您可以使用更新选项来选择正确的Java安装:
    sudo update-alternatives --config java
    sudo update-alternatives --config javac
    
  • 确保
    JAVA\u HOME
    在会话中指向正确的JDK:
    export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
    

让我知道这是否有效。

不太清楚您在问什么。此错误意味着您的运行时JRE版本不同,并且与用于构建此JAR文件的JDK版本不兼容。该错误看起来像是您在混合两个不同JDK版本的部分,使用旧版本的JVM和引导类路径(运行库)一个更新的。不知道会发生什么。你是如何安装/设置Java的?我是如何安装Java的有点模糊。我想我可以有任何数量的JRE。当我的计算机要求我更新Java时,我不注意我是否同意。我知道我有一个OpenJDK类型的OpenJDK-11.0.2。我在我的路径中包含了这个。我已经卸载了Oracle版本6中的两个JRE,我也卸载了版本8中的一个,都已卸载。我还想知道这是否与“应用程序引擎java”无关这是谷歌云带来的。我不知道如何回滚那个东西的版本。另外:我找不到更老的JDK。即使我能找到一个更老的JDK,我也不知道如何将JDK版本映射到这个55.0或53.0版本号系统。我向谷歌技术支持寻求帮助,估计他们会在一个商业周期内回复我嗯。