在Centos 7上设置Java环境变量会破坏$ PATH

时间:2018-02-19 17:32:18

标签: java linux centos7

在Centos 7服务器上安装Java 8后,我将以下行添加到/ etc / environment

export JAVA_HOME=/opt/jdk1.8.0_161
export JRE_HOME=/opt/jdk1.8.0_161/jre
export PATH=$PATH:/opt/jdk1.8.0_161/bin:/opt/jdk1.8.0_161/jre/bin

然而,在重新启动框后,我登录后会出现

-bash: id: command not found
-bash: id: command not found
-bash: id: command not found
/usr/libexec/grepconf.sh: line 5: grep: command not found

这让我觉得我已经以某种方式破坏了PATH变量,但我无法打开/ etc / environment,因为“less”,“vi”等不被识别为命令。

关于我的想法我做错了,如何修复当前状态?

1 个答案:

答案 0 :(得分:2)

export中不要/etc/environment。相反,只提供定义,例如JAVA_HOME=/opt/jdk1.8.0_161

使用vi的完整路径,例如/usr/bin/vi来修复文件。这种方式PATH(在现在失败的/etc/environment中导出)不会被搜索。

这是一个示例命令。

/usr/bin/sudo /usr/bin/vi /etc/environment