必须将OpenJDK 21的bin目录添加到PATH环境变量中,否则执行java、javac会提示“command not found”;先确认安装路径,再通过编辑~/.bashrc(或~/.zshrc)设置JAVA_HOME和PATH,最后执行source生效并验证版本。

在Fedora 40系统中让终端能直接运行java、javac等命令,必须将OpenJDK 21的bin目录添加到PATH环境变量中,否则执行命令时会提示“command not found”。
确认OpenJDK 21已安装并定位安装路径
打开终端,运行:sudo dnf list installed | grep jdk21 或 rpm -qa | grep jdk,确认openjdk-21-jdk或类似包名已存在。若未安装,先执行:sudo dnf install java-21-openjdk-devel。
安装后,用update-alternatives --config java查看当前Java路径,输出类似:/usr/lib/jvm/java-21-openjdk-21.0.3.0.9-2.fc40.x86_64/bin/java。把末尾/bin/java去掉,得到JAVA_HOME路径:【/usr/lib/jvm/java-21-openjdk-21.0.3.0.9-2.fc40.x86_64】。
注意:不同Fedora 40更新批次的OpenJDK 21版本号可能略有差异,路径中的数字部分需以你系统实际输出为准,不能直接复制示例路径。
为当前用户配置PATH(推荐)
编辑当前用户的shell配置文件:nano ~/.bashrc(如使用zsh则改用~/.zshrc)。
在文件末尾添加以下两行:
export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-21.0.3.0.9-2.fc40.x86_64
export PATH=$JAVA_HOME/bin:$PATH
保存退出后,立即生效:source ~/.bashrc。这一步必须执行,否则新PATH不会加载进当前终端会话。
验证PATH是否生效
运行echo $PATH,检查输出中是否包含/usr/lib/jvm/java-21-openjdk-21.0.3.0.9-2.fc40.x86_64/bin。
运行which java和which javac,两者都应返回该bin目录下的对应可执行文件路径。
最后运行java -version,确认输出显示OpenJDK 21.x.x版本信息,且无报错。

















