错误消息:正在安装 OpenDaylight "java_home"

Error message: Installing OpenDaylight "java_home"

我需要安装 OpenDaylight 控制器,我已经按照步骤操作,但是我收到了这个错误消息


dalal@dalal:~$ sudo ./distribution-karaf-0.4.0-Beryllium/bin/karaf
karaf: JAVA_HOME not set; results may vary
./distribution-karaf-0.4.0-Beryllium/bin/karaf: 242: [: Illegal number: 
OpenJDK 64-Bit Server VM warning: Ignoring option UnsyncloadClass; support was removed in 11.0
OpenJDK 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0
-Djava.endorsed.dirs=/usr/lib/jvm/java-11-openjdk-amd64/jre/lib/endorsed:/usr/lib/jvm/java-11-openjdk-amd64/lib/endorsed:/home/dalal/distribution-karaf-0.4.0-Beryllium/lib/endorsed is not supported. Endorsed standards and standalone APIs
in modular form will be supported via the concept of upgradeable modules.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

我相信这里发生了两件事。一个看起来是致命的,但可能不是,另一个肯定是致命的。

您应该在同一个 shell 提示符下做的第一件事是 运行 "java -version"。我相信这可能会给您带来某种错误,而不是打印您已安装并在 PATH 中的 Java 版本。如果失败,则必须正确安装 Java.

我认为关于 JAVA_HOME 未设置的消息是转移注意力。如果我没记错的话,Karaf 错误地抱怨了这一点。我相信如果 Java 正确安装并在您的 PATH 中,它会工作得很好。

问题是 Beryllium 在 Java 11 上不支持 运行。您的选择是:

  • 提供一个 Java 8 运行时,它将与 Beryllium 一起工作;
  • 升级到 Sodium 或更高版本,它将与 Java 11.
  • 一起使用