Fedora OpenJDK设置JAVA_HOME

B.M*_*.W. 3 java linux openjdk fedora environment-variables

我正在使用Fedora(实际上是Pidora,因为我试图在raspberrypi集群上设置hadoop).我使用ansible在所有节点上安装了oopenjdk.但是,当我尝试设置JAVA_HOME环境变量时,我真的很困惑,看看以下文件夹/usr/lib/jvm:

[root@datafireball1 jvm]# ls
java-1.7.0-openjdk-1.7.0.60-2.4.7.0.fc20.arm  jre  jre-1.7.0  jre-1.7.0-openjdk  jre-1.7.0-openjdk-1.7.0.60-2.4.7.0.fc20.arm  jre-openjdk
[root@datafireball1 jvm]# ls -alth
total 80K
drwxr-xr-x   3 root root 4.0K Jun  7 21:07 .
lrwxrwxrwx   1 root root   35 Jun  7 21:07 jre-1.7.0-openjdk -> /etc/alternatives/jre_1.7.0_openjdk
lrwxrwxrwx   1 root root   27 Jun  7 21:07 jre-1.7.0 -> /etc/alternatives/jre_1.7.0
lrwxrwxrwx   1 root root   29 Jun  7 21:07 jre-openjdk -> /etc/alternatives/jre_openjdk
lrwxrwxrwx   1 root root   21 Jun  7 21:07 jre -> /etc/alternatives/jre
lrwxrwxrwx   1 root root   48 Jun  7 21:07 jre-1.7.0-openjdk-1.7.0.60-2.4.7.0.fc20.arm -> java-1.7.0-openjdk-1.7.0.60-2.4.7.0.fc20.arm/jre
drwxr-xr-x   4 root root 4.0K Jun  7 21:06 java-1.7.0-openjdk-1.7.0.60-2.4.7.0.fc20.arm
Run Code Online (Sandbox Code Playgroud)

为什么Java有这么多文件夹,我应该将哪个文件夹用作Java主页?

[root@datafireball1 bin]# which java
/usr/bin/java
[root@datafireball1 bin]# ls -alSh /usr/bin/ | grep java
lrwxrwxrwx  1 root root      22 Jun  7 21:07 java -> /etc/alternatives/java
Run Code Online (Sandbox Code Playgroud)

谢谢!

Pau*_*lgo 9

您可以添加您的.bashrc文件:

export JAVA_HOME = $(readlink -f/usr/bin/java | sed"s:bin/java ::")

它会在您更新包时动态更改.