【问题标题】:Java command not found on Linux在 Linux 上找不到 Java 命令
【发布时间】:2012-06-29 13:45:55
【问题描述】:

在 Oracle Enterprise Linux 中,当我输入 java 时,我得到了

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

我该如何解决这个问题?

谢谢

【问题讨论】:

  • 当您运行 update-alternatives --config java 时,您是否选择了 2?选择 2 后发生了什么,然后运行 ​​java 命令?你仍然得到错误,java:找不到命令吗?
  • @Jasonw 我确实通过输入 2 选择了 2,之后我仍然收到 java: command not found
  • 如果你执行 ls -l /etc/alternatives/java,它应该符号链接到 /usr/java/jre1.6.0_24/bin/java 。然后您需要检查调用了哪个 java,which java 和给定的路径(例如 /usr/bin/java),它应该符号链接到 /etc/alternatives/java
  • @Jasonw 我已经通过 devsundar 下面提到的解决方案解决了这个问题。还是谢谢。
  • 是的,该配置基于每个用户。具有替代方案的一种适用于系统范围。但是,如果您对解决方案感到满意,那就太好了! :)

标签: java linux bash oracle-enterprise-linux


【解决方案1】:

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

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

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

【讨论】:

  • 你也可以在ubuntu15x上放到/etc/profile.d/path.sh
【解决方案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 时,它确实有效。

【讨论】:

  • 您好,欢迎来到 Stack Overflow,本网站不是论坛,它是问答网站,您的其他答案是问题。请不要这样做,谢谢!
【解决方案3】:

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

【讨论】:

    【解决方案4】:

    我在安装 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
    

    【讨论】:

      【解决方案5】:
      1. 执行:vi ~/.bashrc 或 vi ~/.bash_profile

      (如果上述命令不允许更新 .bashrc 文件,那么您可以通过在终端写入命令,即“leafpad ~/.bashrc”在记事本中打开此文件)

      1. 添加行:export JAVA_HOME=/usr/java/jre1.6.0_24
      2. 保存文件(使用shift + Z + Z
      3. 源 ~/.bashrc 或源 ~/.bash_profile
      4. 执行:回显 $JAVA_HOME (输出应打印路径)

      【讨论】:

      • 问题是命令“java -version”不起作用 Not echo $JAVA_HOME
      猜你喜欢
      • 2017-12-20
      • 1970-01-01
      • 2017-10-08
      • 1970-01-01
      • 2016-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多