簡體   English   中英

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

[英]How do I rollback the version of java.util.Map?

這個問題應該與任何有興趣了解標准Java對象版本和JDK版本之間的關系以及如何回滾Java版本的人有關。

因此:如何回滾java.util.Map對象的版本? 我確定我也必須回滾其他對象。

我正在嘗試遵循這些說明( https://cloud.google.com/solutions/mobile/mobile-firebase-app-engine-flexible ),並且當我嘗試讓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。 類文件的版本錯誤為52.0,應為50.0

基於Java 6具有正確的Map.class版本的猜測,我嘗試切換回Java 6,但是令我驚訝的是,這沒有用。

謝謝,本

嘗試使用Java 8而不是11。

  • 安裝OpenJDK 8
     sudo apt install openjdk-8-jdk 
  • 確保您使用的Java版本正確。 您可以使用update-alternatives選擇正確的Java安裝:
     sudo update-alternatives --config java sudo update-alternatives --config javac 
  • 確保JAVA_HOME指向會話中正確的JDK:
     export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") 

讓我知道是否可行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM