当我运行命令检查Java版本时出现此错误:
(base) wesleymonteiro@MacBook-Pro-de-Wesley ~ % java -version
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x0000000181804904, pid=12907, tid=8451
#
# JRE version: (11.0.13+7) (build )
# Java VM: OpenJDK 64-Bit Server VM (11.0.13+7-b1751.21, mixed mode, tiered, compressed oops, g1 gc, bsd-aarch64)
# Problematic frame:
# C [libsystem_platform.dylib+0x1904] _platform_strlen+0x4
#
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /Users/wesleymonteiro/hs_err_pid12907.log
我不确定如何解决此问题,希望得到指导。
尝试检查已安装的 Java 版本时系统显示错误,返回有关过时版本 (11.0.13) 的信息。终端无法识别从 Homebrew 安装的 OpenJDK 17 版本。
为了解决该问题,采取了以下步骤:
验证 OpenJDK 17 的安装: 我们检查 OpenJDK 17 是否安装在预期目录中。使用的命令是:
ls /usr/local/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home
安装 OpenJDK 17: 如果未安装 OpenJDK 17,将使用 Homebrew 安装:
brew install openjdk@17
设置环境变量: 为了确保系统使用正确版本的 Java,配置了环境变量
JAVA_HOME
和 PATH
。以下几行已添加到 .zshrc
文件中,该文件是 Zsh shell 的配置文件:
export JAVA_HOME="/usr/local/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home"
export PATH="$JAVA_HOME/bin:$PATH"
重新加载配置文件: 修改
.zshrc
后,需要重新加载才能使更改生效:
source ~/.zshrc
检查Java版本: 最后,执行检查以验证 Java 版本,以确认系统现在指向正确的版本:
java -version