注意:这是一个老问题,答案反映了当时的世界。现代的Ubuntu发行版有OpenJDK可供安装

sudo apt install default-jdk

我正在尝试在Ubuntu Linux发行版上安装Java开发工具包(JDK),但我无法安装它。

在Ubuntu上安装它的步骤是什么?


当前回答

你可以通过apt-get安装:

sudo add-apt-repository ppa:linuxuprising/java
sudo apt-get update
sudo apt-get install oracle-java11-installer

之后,不要忘记检查版本:

java -version

其他回答

Install the appropriate version of OpenJDK JAVA_VERSION=8 sudo add-apt-repository -y ppa:openjdk-r/ppa sudo apt-get update sudo apt-get -qq install -y openjdk-$JAVA_VERSION-jdk Set Environment Variables in /etc/profile.d/jdk.sh JAVA_HOME=/usr/lib/jvm/java-$JAVA_VERSION-openjdk-amd64 echo "export JAVA_HOME=$JAVA_HOME" | sudo tee -a /etc/profile.d/jdk.sh echo "export J2SDKDIR=$JAVA_HOME" | sudo tee -a /etc/profile.d/jdk.sh echo "export J2REDIR=$JAVA_HOME/jre" | sudo tee -a /etc/profile.d/jdk.sh echo "export PATH=$PATH:$JAVA_HOME/bin:$J2REDIR/bin" | sudo tee -a /etc/profile.d/jdk.sh Check your installation /bin/bash /etc/profile.d/jdk.sh java -version echo $JAVA_HOME echo $J2REDIR echo $PATH

我也有同样的问题,但没有一条评论对我有用。最后,我注意到我禁用了我的更新。当我重新激活它,所以sudo apt-get更新工作正确,问题得到解决。 (更新系统设置>软件和更新>更新选项卡 这里我勾选了两个重要更新和推荐更新的第一个选项)。

你也可以很容易地安装Oracle的JDK 1.7;作为一个例子,这是如何安装JDK 1.7.0_13;

从Oracle的网站下载JDK。下载到最新版本的链接总是从http://java.oracle.com。

作为根,做;

cd /usr/local
tar xzf <the file you just downloaded>

作为普通用户,在~/中添加或更改这两行。型材要指向安装;

export JAVA_HOME=/usr/local/jdk1.7.0_13
export PATH=$PATH:$JAVA_HOME/bin

如果是更新,您可能还想删除/usr/local中的旧java安装目录。

登出并重新登录(或做。~/.profile),一切都应该正常工作。

Oracle JDK的缺点是它不会像OpenJDK那样随系统的其他部分一起更新,所以如果您正在运行需要它的程序,我主要会考虑使用它。

尝试使用SDKMAN!包管理器- https://sdkman.io/install 现在,它是在任何Linux发行版上安装许多基于jvm的sdk、工具和框架的最简单方法。

在安装之后,运行以下命令查看所有可用的Java发行版:

sdk list java

选择您需要的发行版并安装它:

sdk install java <version>

按照这个视频,我已经成功地在Ubuntu 18.04 LTS上安装了JDK 10。

我正在复制视频描述的节选。

只要打开终端,然后输入以下命令:

Java安装(PPA)

sudo add-apt-repository ppa:linuxuprising/java
sudo apt-get update
sudo apt-get install oracle-java10-installer

用于设置环境变量(使java10默认)

sudo apt-get install oracle-java10-set-default

在Ubuntu 16.04、Linux Mint、Debian等Linux系统上安装JDK 10的方法相同。