0

运行 OSX 10.15.7,sdkman 5.9.1+575。

sdkman 似乎已经进入了一个糟糕的状态,它认为 Java 1.8 既已安装又未安装。

$ sdk uninstall java 1.8.0 /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/
java 1.8.0 is not installed.
$ sdk install java 1.8.0 /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/
java 1.8.0 is already installed.
$ ls /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk
ls: /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk: No such file or directory

Java 1.8 是通过 sdkman 安装的并且工作正常,然后我跑了一条毯子brew upgrade,我认为它试图升级我的 Java 版本。我不是 100% 认为这是原因 - 大约是一周前,那个终端会话早已不复存在,而且~/Library/Logs/Homebrew/openjdk是空的。

我怎样才能让 sdkman 解开,或者我怎样才能发现有关问题的更多信息?

4

1 回答 1

0

我在 sdkman slack 频道中交叉发布了这个并得到了解决方案。在这里张贴给后代。

我的错误是使用 SDKMAN 来协调 brew 安装的 Java 版本。显然这非常麻烦,并且每次 brew 发布该 JDK 的新版本时都会中断。

解决步骤:

$ unlink ~/.sdkman/candidates/java/1.8.0
$ sdk install java 8.0.282.j9-adpt

这会将 sdkman 与 brew 版本的 Java 断开连接,并添加 Java 8 的并行安装。

于 2021-03-25T17:58:24.807 回答