我按照以下步骤操作,没有出现错误:
JDK 路径:Downloads/jdk-6u37-linux-x64.bin
终端中的命令:
mkdir Programs cd Programs bash ../Downloads/jdk-6u37-linux-x64.bin ln -s jdk-6u37-linux-x64 jdk
设置 JAVA_HOME 和 Path:家->查看菜单->显示隐藏文件。然后在文本编辑器中打开
.bashrc
。我在文件末尾添加了以下几行。export JAVA_HOME=$Home/Programs/jdk export PATH=:$JAVA_HOME/bin:$PATH
这是执行命令的结果
echo $JAVA_HOME :
/Programs/jdk
这是执行命令的结果
echo $PATH :
:/Programs/jdk/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games1
问题是:这是执行命令 java -version 的结果:
程序‘java’可以在以下包中找到: * 默认-jre * gcj-4.6-jre-headless * gcj-4.7-jre-headless * openjdk-7-jre-headless * openjdk-6-jre-headless 尝试:sudo apt-get install
答案1
您需要使用 update-alternatives 来更新软链接确定命令。
例如:
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/jdk1.6.0_37/bin/java" 1
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/jdk1.6.0_37/jre/bin/java" 2
在你的情况下,它是 $Home/Programs/jdk 而不是 /opt/jdk1.6.0_37
注意如果从手动删除的先前版本更新,请执行上述命令两次,因为第一次会收到错误消息。
然后将新的 JRE 设置为默认:
sudo update-alternatives --set java /opt/java/jdk1.6.0_37/bin/java
或者
sudo update-alternatives --config java
例子:
root@ubuntu:/opt# update-alternatives --config java
There are 3 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 auto mode
* 1 /opt/jdk1.6.0_37/bin/java 1 manual mode
2 /opt/jdk1.6.0_37/jre/bin/java 2 manual mode
3 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode
运行 java -version 确认 java 版本
注意:我建议使用 Github 上的 oab-java bash 脚本。
答案2
export JAVA_HOME=$Home/Programs/jdk
您应该使用 $HOME,因为 $Home 未定义。
例如
export JAVA_HOME=$HOME/Programs/jdk