【问题标题】:Installing Oracle Java on Linux Mint (instead of using OpenJDK) -- possible problems with linking在 Linux Mint 上安装 Oracle Java(而不是使用 OpenJDK)——可能存在链接问题
【发布时间】:2013-05-24 00:28:47
【问题描述】:

对于接下来的冗长查询,我提前道歉,但我很迷茫,想包括所有相关信息。

这是我开始使用的系统:

Linux Mint 14 Nadia MATE
64-bit Kernel
OpenJDK version 1.7.0_21

我想安装 Oracle Java 7 并将其作为我的系统默认设置。

这是我尝试过的:

1) JDK1.7.0_21的tar文件下载
2) 解压并移动到 /usr/lib/jvm/jdk1.7.0_21
3) cd /usr/lib/jvm
4) ln -s jdk1.7.0_21 java-7-oracle
5) 创建文件/usr/lib/jvm/.java-7-oracle.jinfo 并继续使用以下信息填充它:

    alias=java-7-oracle
    priority=50
    section=non-free

    jre ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel

    jre java /usr/lib/jvm/java-7-oracle/jre/bin/java
    jre java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm
    jre javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws  
    ....  

6) 然后,出于某些可能考虑不周的原因,我放弃了这种方法,转而采用一种我觉得我更好理解的更短的方法。所以我...

7) 删除​​了我创建的符号链接rm java-7-oracle,希望它只会删除符号链接。 8)继续执行以下命令:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.*/bin/java 1065
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.*/bin/javac 1065
sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.7.*/bin/javaws 1065
sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.7.*/bin/jar 1065

9) sudo update-alternatives --config java 我选择了这个选项:
/usr/lib/jvm/jdk1.7.0_21/bin/java 1065 manual mode

之后,当我运行 java -version 时,我收到错误消息,提示无法启动 Java 虚拟机。

然后,我进去又搞砸了一点,将优先级更改为 1,等等。 我什至对我的/etc/profile进行了以下更改:
JAVA_HOME=/usr/lib/jvm/jdk1.7.0_17
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME
export PATH
并加载它:. /etc/profile

但我仍然无法让 java 工作。 不同的是,现在当我运行java -version 时,我得到:
bash: /usr/bin/java: No such file or directory
我也试过指定绝对路径:/usr/lib/jvm/jdk1.7.0_21/bin/java -version
但无济于事。

有人可以帮帮我吗?在这一点上,我感到很失落。
而且我似乎也无法恢复到 OpenJDK。

谢谢!

【问题讨论】:

    标签: java linux linux-mint


    【解决方案1】:

    问题在于,我在 64 位系统上使用的是 32 位版本的 Java。
    所以我删除了/usr/lib/jvm/jdk1.7.0_21

    然后我去了 Oracle 并下载了适用于 Linux x64 的 Java。
    (我最初被他们模棱两可的“Java for Linux x86”标签误导了,因为我的系统是 x86-64。显然他们的 x86 指的是 32 位系统。)

    下载正确的 64 位版本后,我按照该站点的说明进行操作:

    http://install-climber.blogspot.com/2013/02/linux-mint-14-nadia-mate-amd64-howto-install-oracle-java-jdk7.html

    【讨论】:

      【解决方案2】:

      1.检查您的 Ubuntu Linux 操作系统架构是 32 位还是 64 位,打开终端并运行以下命令。 类型/复制/粘贴:文件 /sbin/init 请注意您的 Ubuntu Linux 操作系统架构的位版本,它将显示它是 32 位还是 64 位。

      2。检查您的系统上是否安装了 Java。 为此,您必须从终端运行 Java 版本命令。 打开终端并输入以下命令: 类型/复制/粘贴:java -version 如果您的系统上安装了 OpenJDK,它可能如下所示: java版本“1.7.0_15” OpenJDK 运行时环境 (IcedTea6 1.10pre) (7b15~pre1-0lucid1) OpenJDK 64 位服务器 VM(内部版本 19.0-b09,混合模式) 如果您的系统上安装了 OpenJDK,那么您为本练习安装了错误的 Java 供应商版本。

      3.从您的系统中完全删除 OpenJDK/JRE,并创建一个目录来保存您的 Oracle Java JDK/JRE 二进制文件。这将防止不同供应商 Java 版本之间的系统冲突和混淆。例如,如果您的系统上安装了 OpenJDK/JRE,则可以通过在命令行中键入以下内容来删除它:

      输入/复制/粘贴:

      sudo apt-get purge openjdk-\*

      此命令将从您的系统中完全删除 OpenJDK/JRE

      键入/复制/粘贴:

      sudo mkdir -p /usr/local/java
      

      此命令将创建一个目录来保存您的 Oracle Java JDK 和 JRE 二进制文件。

      4.下载适用于 Linux 的 Oracle Java JDK。 确保为 32 位或 64 位系统架构(以 tar.gz 结尾)选择正确的压缩二进制文件。 例如,如果您使用的是 Ubuntu Linux 32 位操作系统,请下载 32 位 Oracle Java 二进制文件。 例如,如果您使用的是 Ubuntu Linux 64 位操作系统,请下载 64 位 Oracle Java 二进制文件。 可选,下载 Oracle Java JDK 文档 选择 jdk-7u45-apidocs.zip 重要信息:64 位 Oracle Java 二进制文件无法在 32 位 Ubuntu Linux 操作系统上运行,如果您尝试在 32 位 Ubuntu Linux 上安装 64 位 Oracle Java,您将收到多条系统错误消息。

      5.将 Oracle Java 二进制文件复制到 /usr/local/java 目录。 在大多数情况下,Oracle Java 二进制文件下载到:/home/"your_user_name"/Downloads。 32 位 Ubuntu Linux 上的 32 位 Oracle Java 安装说明:

      键入/复制/粘贴:

      cd /home/"your_user_name"/Downloads
      

      输入/复制/粘贴:

      sudo cp -r jdk-7u45-linux-i586.tar.gz /usr/local/java
      

      键入/复制/粘贴:

      cd /usr/local/java
      

      64 位 Ubuntu Linux 上的 64 位 Oracle Java 安装说明: 输入/复制/粘贴:

      cd /home/"your_user_name"/Downloads
      

      键入/复制/粘贴:

      sudo cp -r jdk-7u45-linux-x64.tar.gz /usr/local/java
      

      键入/复制/粘贴:

      cd /usr/local/java
      

      6.对下载的 Oracle Java tar.gz 文件运行以下命令。 确保以 root 身份执行此操作,以使它们对系统上的所有用户都可执行。 打开根终端类型 sudo -s you will be prompted for your logon password.

      32 位 Ubuntu Linux 上的 32 位 Oracle Java 安装说明:

      输入/复制/粘贴:

       sudo chmod a+x jdk-7u25-linux-i586.tar.gz
      

      64 位 Ubuntu Linux 上的 64 位 Oracle Java 安装说明:

      键入/复制/粘贴:

      sudo chmod a+x jdk-7u45-linux-x64.tar.gz
      

      7.解压压缩的 Java 二进制文件,在目录 /usr/local/java 32 位 Ubuntu Linux 上的 32 位 Oracle Java 安装说明:

      键入/复制/粘贴:

      sudo tar xvzf jdk-7u25-linux-i586.tar.gz
      

      64 位 Ubuntu Linux 上的 64 位 Oracle Java 安装说明:

      键入/复制/粘贴:

      sudo tar xvzf jdk-7u45-linux-x64.tar.gz
      

      8.仔细检查您的目录。 此时,您应该在 /usr/local/java 中有两个未压缩的二进制目录,用于 Java JDK/JRE,如下所示: 输入/复制/粘贴: ls -a

      jdk1.7.0_45

      9.编辑系统 PATH 文件 /etc/profile 并将以下系统变量添加到您的系统路径。 使用 nano、gedit 或任何其他文本编辑器,以 root 身份打开 /etc/profile

      键入/复制/粘贴:

      sudo gedit /etc/profile
      

      输入/复制/粘贴:

      sudo nano /etc/profile
      

      10.使用箭头键向下滚动到文件末尾,然后将以下行添加到 /etc/profile 文件的末尾: 输入/复制/粘贴:

      JAVA_HOME=/usr/local/java/jdk1.7.0_45
      PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
      export JAVA_HOME
      export PATH
      

      11.保存/etc/profile 文件并退出。

      12.通知您的 Ubuntu Linux 系统您的 Oracle Java JDK/JRE 所在的位置。这将告诉系统新的 Oracle Java 版本可供使用。

      键入/复制/粘贴:

      sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.7.0_45/bin/java" 1
      

      此命令通知系统 Oracle Java JRE 可供使用

      键入/复制/粘贴:

      sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.7.0_45/bin/javac" 1
      

      此命令通知系统 Oracle Java JDK 可供使用

      键入/复制/粘贴:

      sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.7.0_45/bin/javaws" 1
      

      此命令通知系统 Oracle Java Web start 可供使用

      13.通知您的 Ubuntu Linux 系统 Oracle Java JDK/JRE 必须是默认的 Java。 输入/复制/粘贴:

       sudo update-alternatives --set java /usr/local/java/jdk1.7.0_45/bin/java
      

      该命令将为系统设置java运行环境

      键入/复制/粘贴:

      sudo update-alternatives --set javac /usr/local/java/jdk1.7.0_45/bin/javac
      

      此命令将为系统设置 javac 编译器

      键入/复制/粘贴:

      sudo update-alternatives --set javaws /usr/local/java/jdk1.7.0_45/bin/javaws
      

      此命令将为系统设置 Java Web 启动

      14.通过键入以下命令重新加载系统范围的 PATH /etc/profile: 输入/复制/粘贴:

      . /etc/profile
      

      请注意,您的系统范围的 PATH /etc/profile 文件将在您的 Ubuntu Linux 系统重新启动后重新加载

      15.测试以查看您的系统上是否正确安装了 Oracle Java。运行以下命令并记下 Java 的版本:

      16.成功安装 32 位 Oracle Java 将显示:

      输入/复制/粘贴:

      java -version
      

      此命令显示您系统上运行的 java 版本 您应该会收到一条消息,其中显示: java版本“1.7.0_45” Java(TM) SE 运行时环境 (build 1.7.0_25-b25) Java HotSpot(TM) 服务器虚拟机(build 23.1-b03,混合模式)

      键入/复制/粘贴:

      javac -version
      

      此命令让您知道您现在可以从终端编译 Java 程序。 您应该会收到一条消息,其中显示: javac 1.7.0_25

      **17.成功安装 Oracle Java 64 位将显示:

      键入/复制/粘贴:

      java -version
      

      此命令显示您系统上运行的 java 版本 您应该会收到一条消息,其中显示: java版本“1.7.0_25” Java(TM) SE 运行时环境 (build 1.7.0_21-b21) Java HotSpot(TM) 64 位服务器 VM(内部版本 23.6-b04,混合模式)

      输入/复制/粘贴:

       javac -version
      

      此命令让您知道您现在可以从终端编译 Java 程序。 您应该会收到一条消息,其中显示: javac 1.7.0_25

      [https://www.wikihow.com/Install-Oracle-Java-JDK-on-Ubuntu-Linux][1]

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-06-22
        • 2014-03-03
        • 2020-05-31
        • 1970-01-01
        • 2020-08-24
        • 2020-08-28
        • 2014-12-09
        • 2017-01-09
        相关资源
        最近更新 更多