无法为所有用户设置PATH



尝试为Pufferpanel安装OpenJDK 17。用户pi可以做java -version很好,但是Pufferpanel得到bash: java: command not found

我的/etc/profile/etc/profile.d/java.sh有以下行:

#JAVA
export JAVA_HOME="/usr/lib/jvm/jdk-17.0.1+12"
export PATH=$JAVA_HOME/bin:$PATH

此外,/etc/environment中设置了JAVA_HOME="/usr/lib/jvm/jdk-17.0.1+12"

已授予java.sh和具有chmod 777JAVA_HOME文件夹的完全权限。用户pufferpanel现在可以运行脚本,但错误保持不变:bash: java: command not found

尝试了一些东西,发现了这个:

pufferpanel@raspberrypi:/home/pi$ whereis java
java: /usr/share/java

同时pi给出以下输出:

pi@raspberrypi:~ $ whereis java
java: /usr/share/java /usr/lib/jvm/jdk-17.0.1+12/bin/java

好消息是Java确实以用户pufferpanel:的身份运行

pufferpanel@raspberrypi:/usr/lib/jvm/jdk-17.0.1+12/bin$ ./java -version
openjdk version "17.0.1" 2021-10-19
OpenJDK Runtime Environment Temurin-17.0.1+12 (build 17.0.1+12)
OpenJDK Server VM Temurin-17.0.1+12 (build 17.0.1+12, mixed mode, sharing)

我的猜测是PATH在某个地方被覆盖了,只是不知道在哪里。

如果有更简单的方法来安装高于版本16的Java,只是为了让《我的世界》发挥作用,请告诉我!

您所做的一切都很好,但您可能应该在/etc/profile.d/中创建一个custom.sh shell脚本

至于环境变量,如JAVA_HOME,它们应该进入/etc/environment

~/.bashrc中设置PATH解决了问题,复制了java.sh并粘贴了它。起初找不到~/.bashrc,但这有助于解决这个问题。

由于Pufferpanel是另一回事,我将其标记为我的问题的答案,即让Java作为用户工作。

最新更新