【问题标题】:Fedora OpenJDK Set JAVA_HOMEFedora OpenJDK 设置 JAVA_HOME
【发布时间】:2014-07-28 23:06:09
【问题描述】:

我正在使用 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

为什么有这么多 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

谢谢!

【问题讨论】:

    标签: java linux environment-variables fedora openjdk


    【解决方案1】:

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

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

    当你更新你的包时它会动态变化。

    【讨论】:

      【解决方案2】:

      使用 Fedora 26 测试的最佳解决方案:

      echo "JAVA_HOME=/etc/alternatives/jre" >> ~/.profile
      source ~/.profile
      echo $JAVA_HOME
      

      【讨论】:

        【解决方案3】:

        使用以下命令找出在 UNIX / Linux 下 java 可执行文件的确切路径:

        $哪个java(假设返回/usr/java/jdk1.5.0_07/bin/java)

        然后设置路径为export JAVA_HOME=/usr/java/jdk1.5.0_07/bin/java

        【讨论】:

        • 它实际上返回 /usr/bin/java,我应该只做 export JAVA_HOME=/usr/bin/java 吗?并将其复制到 /etc/environment?
        • 你能检查一下java -v是否在你的系统上运行。我想你必须先下载并安装JDK。你展示的似乎是操作系统。
        • java -v 不是我认为的有效命令,但java -version 返回java version "1.7.0_55" OpenJDK Runtime Environment (fedora-2.4.7.0.fc20-arm u55-b13) OpenJDK Zero VM (build 24.51-b03, mixed mode)
        猜你喜欢
        • 1970-01-01
        • 2021-04-22
        • 1970-01-01
        • 2022-11-03
        • 2012-06-25
        • 1970-01-01
        • 2020-08-01
        • 1970-01-01
        相关资源
        最近更新 更多