无法安装 Java tarball。 Java 未找到二进制文件

Unable to install Java tarball. Java binary not found

当我 运行 遇到无法将 java 版本更新到 Java 的问题时,我试图在 Raspberry Pi 上设置 MineOS 服务器16. Raspberry Pi 是 运行 ARM64 架构,我的 JDK 来自 https://adoptopenjdk.net/releases.html?variant=openjdk16&jvmVariant=hotspot. Here is the specific JDK I downloaded onto my Raspberry Pi: https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16.0.1%2B9/OpenJDK16U-jdk_aarch64_linux_hotspot_16.0.1_9.tar.gz。要安装它并将其添加到我的 $PATH,我做了:

tar -xf OpenJDK16U-jdk_aarch64_linux_hotspot_16.0.1_9.tar.gz -C /opt/
ln -s /opt/jdk-16.0.1+9/bin/java /usr/bin/java

当运行java --version时,我得到/usr/bin/java: No file or directory。有人知道为什么吗?在我发现 Raspberry Pi 支持 ARM64 之前,我在 ARM32 上做了这个并且工作正常,但我需要能够为服务器分配更多内存,所以我不得不更新到 ARM64。如果您需要更多信息,我可以提供。

I did this on ARM32 and it worked fine, but I needed to be able to allocate more memory to a server, so I had to update to ARM64

我假设你的意思是你现在使用的是不同的 Pi?

在 Pi3 上,我可以做到

wget https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16.0.1%2B9/OpenJDK16U-jdk_aarch64_linux_hotspot_16.0.1_9.tar.gz

sudo tar -xzvf -C /opt OpenJDK16U-jdk_aarch64_linux_hotspot_16.0.1_9.tar.gz

/opt/jdk-16.0.1+9/bin/java --version

注意:tar -xz是针对TAR.GZ个文件,而你在问题中只写了-x...

正如预期的那样,这给了我一个关于不兼容二进制文件的错误,因为我的 Pi 需要 ARMv7。

从那里,我会更新 PATH 没有 符号链接,就像

中的做法一样

也就是说,如果该文件确实存在,那么您遇到了其他一些权限问题

I want the jdk to be stored in /opt/ and easy to remove all of the files related to it.

我认为 /opt 没有真正的必要。如果你可以用apt/pkg来安装,那么你也可以用它来remove/purge文件为它