CentOS中的"哪个java"打印错误的java路径

sun*_*kin 6 java linux centos java-home

我不知道为什么" 哪个java "和" whereis java "路径不正确.我试图编辑〜/ .bash_profile和/ etc/environment但没有帮助.所需的路径是在下面的" echo $ JAVA_HOME "中看到的,但同样没有反映在" which java "中

以下是我在CentOS 6.4中得到的内容:

哪个java

在/ usr/bin中/ JAVA


java -version

java版"1.7.0_45"

JAVA(TM)SE运行时环境(版本1.7.0_45-b18)

JAVA HotSpot(TM)64位服务器VM(内置24.45-b08,混合模式)


哪里是java

java:/ usr/bin/java/etc/java/usr/lib/java/usr/share/java


echo $ JAVA_HOME

/usr/java/jdk1.7.0_45/jre =>期望在echo $ JAVA_HOME时显示正确


Pet*_*rey 9

您的PATH(以及其他任何内容)确定要查找命令的目录.在Linux,Solaris和DOS中也是如此.

执行此操作时which {command},找到可以执行命令的第一个目录.

更新PATH时.bashrc,必须再次获取它以更改当前设置.


Hen*_*ane 8

运行alternatives --config java以选择要用作默认值的Java版本.它将打印出已安装的Javas列表供您选择.

which java但是,将始终打印出来/usr/bin/java.这并不意味着它设置错了!注意:

$ ls -l `which java`
lrwxrwxrwx 1 root root 22 Oct 19 11:49 /usr/bin/java -> /etc/alternatives/java
$ ls -l /etc/alternatives/java
lrwxrwxrwx 1 root root 35 Oct 19 11:49 /etc/alternatives/java -> /usr/lib/jvm/jre-1.5.0-gcj/bin/java
Run Code Online (Sandbox Code Playgroud)

如果您使用alternatives更改IcedTea的路径,ls -l /etc/alternatives/java将反映出来.

  • 我试过它已经显示了所选的所选,但为什么它没有反映在"哪个java" (3认同)