Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Red Hat服务器中找不到JAVA_主页_Java_Redhat_Rhel - Fatal编程技术网

在Red Hat服务器中找不到JAVA_主页

在Red Hat服务器中找不到JAVA_主页,java,redhat,rhel,Java,Redhat,Rhel,我正在尝试查找设置JAVA_HOME env variable的位置,并尝试在~/.bash_profile、~/.bashrc和/etc/profile中查找,但找不到env变量 但是当我运行echo$JAVA_HOMEits时,它给出了值/usr/local/JAVA JAVA_HOME env变量还可以在其他地方使用 顺便说一句,它是一个Red Hat Linux服务器。请尝试文件/etc/bash.bashrc,有时它还用于初始化bash。如果没有,则尝试在/etc中的文件中使用grep

我正在尝试查找设置JAVA_HOME env variable的位置,并尝试在~/.bash_profile~/.bashrc/etc/profile中查找,但找不到env变量

但是当我运行
echo$JAVA_HOME
its时,它给出了值/usr/local/JAVA

JAVA_HOME env变量还可以在其他地方使用


顺便说一句,它是一个Red Hat Linux服务器。

请尝试文件
/etc/bash.bashrc
,有时它还用于初始化bash。如果没有,则尝试在
/etc
中的文件中使用
grep-r BASH\u HOME/etc

更新

来自man bash:

当bash作为交互式登录shell或带有--login选项的非交互式shell调用时,它首先读取并执行文件/etc/profile中的命令(如果该文件存在)。读取该文件后,它将按顺序查找~/.bash\u profile~/.bash\u login~/.profile,并读取和执行 来自第一个存在且可读的命令的命令

而且:

启动非登录shell的交互式shell时,bash从/etc/bash.bashrc~/.bashrc读取并执行命令(如果存在这些文件)

因此,您唯一没有查看的文件是~/bash\u login

可能JAVA_HOME不在这些文件中,发生的情况是其中一个文件调用另一个脚本,在这种情况下,如果其中一个脚本正在从其他地方“加载”更多脚本,则您必须逐行读取该脚本。关于:

grep JAVA_HOME /etc/*
以及:


还请检查变量是否来源于/etc/中的所有启动脚本以及主目录下的所有启动脚本

看起来会像。路径/文件名或源路径/文件名

例:/etc/var 或
source/etc/var

可以设置环境变量的标准位置很少

  • /等/简介
  • /etc/profile.d下的shell脚本
  • /etc/bashrc
  • ~/.bashrc
  • ~/.bash\u配置文件
建议的方法是将环境变量放入/etc/profile.d下的脚本中。如果其他位置失败,您可以grep此目录

grep -R "JAVA_HOME" /etc/profile.d/

可以提供有关该主题的更多详细信息。

服务器中没有名为
/etc/bash.bashrc
的文件,而且我在尝试
grep-r JAVA_HOME/etc
时没有找到设置env变量的位置,但在javadoc文件中找到了一些匹配项。尝试在主文件夹中搜索:
grep-r JAVA_HOME~
trued
grep-r JAVA_HOME~
未找到任何结果。与ANT_HOME相同,当我给echo$ANT_HOME时,我得到
/usr/local/apache/ANT
,但找不到它的设置位置。
grep -R "JAVA_HOME" /etc/profile.d/