2012-06-28 61 views
20

没有发现在Oracle企业级Linux,当我键入java我越来越Java命令在Linux上

bash: java: command not found 

我已经安装了Java 1.6和我有以下

sudo update-alternatives --config java 

There are 2 programs which provide 'java'. 

    Selection Command 
----------------------------------------------- 
* 1   /usr/lib/jvm/jre-1.4.2-gcj/bin/java 
+ 2   /usr/java/jre1.6.0_24/bin/java 

我怎样才能解决这个问题?

谢谢

+0

当你运行update-alternatives --config java时,你选择了2吗?选择2后发生了什么,然后运行java命令?你仍然得到错误,java:command not found? – Jasonw

+0

@Jasonw我通过键入2来选择2,然后我仍然得到'java:command not found' – user75ponic

+1

如果你做了ls -l/etc/alternatives/java,它应该符号链接到/usr/java/jre1.6.0 _24/bin/java。然后你需要检查哪个java被调用,哪个java和给定的路径(例如/ usr/bin/java),它应该符号链接到/ etc/alternatives/java – Jasonw

回答

29

您可以使用以下命令将一个Java路径添加到PATH变量。

export PATH=$PATH:/usr/java/jre1.6.0_24/bin/ 

您可以将此行添加到主目录中的.bashrc文件。将此添加到.bashrc将确保每次打开bash时都会更新PATH变量。

+0

每次打开终端时路径是否更新? –

+0

你也可以把它放在'/ etc/profile.d/path.sh'上ubuntu15x –

2

我有以下选择:

----------------------------------------------- 
* 1   /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java 
+ 2   /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java 
    3   /home/ec2-user/local/java/jre1.7.0_25/bin/java 

当我选择3,没有奏效。当我选择2时,它确实有效。

+3

嗨,欢迎来到Stack Overflow,这个网站不是论坛,它是一个问答网站,你的其他答案是一个问题。请不要这样做,谢谢! – Ben

2

我发现对我来说最好的方法是下载解压缩,然后将你的新的usr/java/jre-version/bin/java符号链接到java的主仓。

1

我使用以下脚本在安装jdk后更新默认替代方案。

#!/bin/bash 
export JAVA_BIN_DIR=/usr/java/default/bin # replace with your installed directory 
cd ${JAVA_BIN_DIR} 
a=(java javac javadoc javah javap javaws) 
for exe in ${a[@]}; do 
    sudo update-alternatives --install "/usr/bin/${exe}" "${exe}" "${JAVA_BIN_DIR}/${exe}" 1 
    sudo update-alternatives --set ${exe} ${JAVA_BIN_DIR}/${exe} 
done