问题描述
我正在尝试在Ubuntu Linux发行版上安装Java Development Kit(JDK),但我无法安装它。
在Ubuntu上安装它的步骤是什么?
最佳解决方案
参考Ask Ubuntu问题How to set JAVA_HOME for OpenJDK?,
如何在Ubuntu(Linux)中安装Open JDK
(Java开发工具包)?
-
从Application Dash打开终端或按
Ctrl
+Alt
+T
-
更新存储库:
sudo add-apt-repository ppa:openjdk-r/ppa # only Ubuntu 17.4 and earlier sudo apt update
-
可选:要搜索
openjdk
的可用分发,请使用以下命令:apt search openjdk
-
使用以下命令安装适当的版本:
sudo apt install openjdk-8-jdk sudo apt install openjdk-8-source #this is optional, the jdk source code
-
对于
JAVA_HOME
(环境变量)类型命令,如下所示,在”Terminal”中使用您的安装路径…export JAVA_HOME=/usr/lib/jvm/java-8-openjdk
(注意:
/usr/lib/jvm/java-8-openjdk
在这里仅用于演示。您应该根据您的安装使用您的路径。) -
对于
PATH
(环境变量)类型命令,如下所示,在Terminal
中:export PATH=$PATH:$JAVA_HOME/bin
-
要检查您的安装:
java -version
次佳解决方案
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
第三种解决方案
您也可以非常轻松地安装Oracle的JDK 1.7;作为一个例子,这是如何安装JDK 1.7.0_13;
-
下载JDK from Oracle’s site。下载到最新版本始终从http://java.oracle.com链接。
作为根,做;
cd /usr/local
tar xzf <the file you just downloaded>
作为普通用户,在〜/.profile中添加或更改这两行以指向安装;
export JAVA_HOME=/usr/local/jdk1.7.0_13
export PATH=$PATH:$JAVA_HOME/bin
如果是更新,您可能还想删除/usr/local
中的旧Java安装目录。
再次注销(或执行. ~/.profile
),一切都应该正常工作。
Oracle JDK的缺点是它不会像OpenJDK一样更新你的系统,所以如果你正在运行需要它的程序,我会主要考虑它。
第四种方案
如果您已经下载了ZIP文件,请按照以下步骤操作。
运行以下命令以解压缩您的文件。
tar -xvf ~/Downloads/jdk-7u3-linux-i586.tar.gz
sudo mkdir -p /usr/lib/jvm/jdk1.7.0
sudo mv jdk1.7.0_03/* /usr/lib/jvm/jdk1.7.0/
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0/bin/javaws" 1
安装完成后,按如下方式设置环境变量。
编辑文件/etc/profile
中的系统路径:
sudo gedit /etc/profile
最后添加以下行。
JAVA_HOME=/usr/lib/jvm/jdk1.7.0
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH
第五种方案
如果要安装最新的JDK 1.8,请使用webupd8team PPA。
在系统中添加存储库:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
您现在可以使用以下命令安装Oracle Java 8:
sudo apt-get install oracle-java8-installer
此ppa存储库还提供了一个自动设置环境变量的包。只需输入:
sudo apt-get install oracle-java8-set-default
第六种方案
OpenJDK在大多数情况下都可以,但某些银行客户端应用程序可能需要Oracle JDK(我的情况) – 我不能使用OpenJDK。
我很惊讶我在Ubuntu 12.10+ for Oracle JDK中没有看到默认方法(没有外部PPA的存储库)的任何答案 – 我将尝试描述它。
-
安装JavaPackage:
sudo apt-get install java-package
-
从Oracle downloads page下载Oracle JDK
-
从下载的
.tar.gz
存档中创建一个Debian软件包:make-jpkg jdk-YOUR_VERSION-linux-PLATFORM.tar.gz
此命令将生成一个.deb
软件包。 -
以您喜欢的方式安装包(例如,
sudo dpkg -i oracle-java8-jdk_8u40_amd64.deb
)
这是Debian开发人员安装Oracle JDK的官方支持方式,我想这很简单。
第七种方案
在Ubuntu上安装Java 8
首先,您需要在系统中添加webupd8team Java PPA存储库,并使用以下命令集安装Oracle Java 8。
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java8-installer
验证已安装的Java版本
使用上述步骤成功安装Oracle Java后,使用以下命令验证已安装的版本。
$ java -version
java version "1.8.0_77"
Java(TM) SE Runtime Environment (build 1.8.0_77-b03)
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode)
配置Java环境
在Webupd8 ppa存储库中还提供了用于设置环境变量的包,请使用以下命令安装此包。
$ sudo apt-get install oracle-java8-set-default
第八种方案
简单地运行:
sudo apt-get install default-jdk
第九种方案
对于Ubuntu 10.04 LTS,sun-java6软件包已从Ubuntu存档的Multiverse部分中删除。建议您改用openjdk-6。
如果无法从专有的Sun JDK /JRE切换到OpenJDK,则可以从Canonical Partner Repository安装sun-java6软件包。您可以将系统配置为通过命令行使用此存储库:
sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
sudo apt-get update
sudo apt-get install sun-java6-jre sun-java6-plugin
sudo update-alternatives --config java
对于Ubuntu 10.10,sun-java6软件包已从Ubuntu存档的Multiverse部分中删除。建议您改用openjdk-6。
如果无法从专有的Sun JDK /JRE切换到OpenJDK,则可以从Canonical Partner Repository安装sun-java6软件包。您可以将系统配置为通过命令行使用此存储库:
sudo add-apt-repository "deb http://archive.canonical.com/ maverick partner"
sudo apt-get update
sudo apt-get install sun-java6-jre sun-java6-plugin
sudo update-alternatives --config java
第十种方案
使用PPA
您可以使用WebUpd8 PPA(这将从Oracle下载所需的文件并安装JDK 8):
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Are PPA’s safe to add to my system and what are some “red flags” to watch out for?
还要确保您的JAVA_HOME变量已设置为:
/usr/lib/jvm/java-8-oracle
手动安装
Oracle提供的tar.gz没有实际的安装过程。您只需将这些文件解压缩到所需的位置,然后将它们添加到路径中即可。所以过程如下:
从Oracle下载.tar.gz
(这里我将使用jdk-8u20-linux-x64.tar.gz);把它提取到某个地方;
将解压缩的文件夹移动到/usr/lib/jvm
。这不是必需的,但它是安装Java运行时软件的地方
sudo mv /path/to/jdk1.8.0_20 /usr/lib/jvm/oracle_jdk8
使用以下内容创建文件/etc/profile.d/oraclejdk.sh
(调整路径以反映存储JDK的路径):
export J2SDKDIR=/usr/lib/jvm/oracle_jdk8
export J2REDIR=/usr/lib/jvm/oracle_jdk8/jre
export PATH=$PATH:/usr/lib/jvm/oracle_jdk8/bin:/usr/lib/jvm/oracle_jdk8/db/bin:/usr/lib/jvm/oracle_jdk8/jre/bin
export JAVA_HOME=/usr/lib/jvm/oracle_jdk8
export DERBY_HOME=/usr/lib/jvm/oracle_jdk8/db
完成!只有在您注销或重新启动后才能识别这些路径,因此如果您想立即使用它们,请运行source /etc/profile.d/oraclejdk.sh
。