因此Java 11 is out。有人知道如何从命令行安装它(Oracle的OpenJDK)吗?
我希望看到与Oracle Java 10相似的内容:
sudo add-apt-repository ppa:linuxuprising/java
sudo apt-get update
sudo apt-get install oracle-java10-installer
P。 S.在similar问题中建议的说明中:
sudo apt-get install openjdk-11-jdk
不起作用。
答案 0 :(得分:63)
sudo apt-get install openjdk-11-jdk
要做,只有安装OpenJDK 10(非常直观,不是)。
有时,在不确定的将来,该软件包将成为OpenJDK 11(至少是speculated to)。
如果要安装OpenJDK 11,则需要首先添加OpenJDK的PPA,然后安装该软件包:
sudo add-apt-repository ppa:openjdk-r/ppa \
&& sudo apt-get update -q \
&& sudo apt install -y openjdk-11-jdk
答案 1 :(得分:16)
对于在Ubuntu上运行JDK并想升级到JDK11的任何人,我建议通过sdkman安装。 SDKMAN是用于切换JVM,删除和升级的工具。
SDKMAN是用于在大多数基于Unix的系统上管理多个软件开发套件的并行版本的工具。它提供了方便的命令行界面(CLI)和API,用于安装,切换,删除和列出候选人。
安装SDKMAN
$ curl -s "https://get.sdkman.io" | bash
$ source "$HOME/.sdkman/bin/sdkman-init.sh"
$ sdk version
安装Java(11.0.3-zulu)
$ sdk install java
答案 2 :(得分:8)
要在Ubuntu中安装Openjdk 11,可以使用以下命令。
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt install openjdk-11-jdk
答案 3 :(得分:2)
首先检查default-jdk
软件包,很可能已经为您提供了OpenJDK >= 11
。
参考:https://packages.ubuntu.com/search?keywords=default-jdk&searchon=names&suite=all§ion=all
所以从 Ubuntu 18.04 LTS 开始应该没问题。
sudo apt update -qq
sudo apt install -yq default-jdk
注意:不要忘记设置JAVA_HOME
export JAVA_HOME=/usr/lib/jvm/default-java
mvn -version
对于 Ubuntu 16.04 LTS ,官方存储库中仅提供openjdk-8-jdk
,因此您需要在 ppa 中找到它:
sudo add-apt-repository -y ppa:openjdk-r/ppa
sudo apt update -qq
sudo apt install -yq openjdk-11-jdk
注意:不要忘记设置JAVA_HOME
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
mvn -version
答案 4 :(得分:1)
我创建了一个Bash脚本,该脚本基本上可以自动完成链接的similar question中所述的手动安装。它需要tar.gz
文件及其SHA256和值。您可以找到更多信息,并从我的GitHub project page下载脚本。它是根据MIT许可提供的。
答案 5 :(得分:1)
我来这里是为了寻找答案,因为没有人将命令用于oracle Java 11,而仅是openjava 11,所以我弄清楚了如何在Ubuntu上执行该命令,语法如下:
sudo add-apt-repository ppa:linuxuprising/java
sudo apt update
sudo apt install oracle-java11-installer
答案 6 :(得分:0)
在Ubuntu中,只需按照以下命令安装Open JDK。
sudo apt-get update
sudo apt-get install default-jdk
您可以通过以下命令检查Java版本。
java -version
如果要安装Oracle JDK 8,请遵循以下命令。
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
如果要切换Java版本,可以尝试以下方法。
vi ~/.bashrc
并添加以下行导出JAVA_HOME=/usr/lib/jvm/jdk1.8.0_221
(path / jdk文件夹)
或
sudo vi /etc/profile
并添加以下行
#JAVA_HOME=/usr/lib/jvm/jdk1.8.0_221
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME
export JRE_HOME
export PATH
您可以在其他版本上发表评论。这需要注销并重新登录才能使用。如果您想随时随地尝试,可以在同一终端上键入以下命令。只会更新特定终端的Java版本。
source /etc/profile
您始终可以通过java -version
命令检查Java版本。
答案 7 :(得分:0)
我们不需要任何PPA。直接从oracle获取oracle java的直接,原始和正式副本。 执行以下简单步骤。
步骤1:转到Java 11的官方链接--https://www.oracle.com/technetwork/java/javase/downloads/jdk11-downloads-5066655.html
第2步:选择广播-接受许可协议。
Step3:单击 jdk-11.0.x_linux-x64_bin.deb 进行下载。这里的“ x”是更新版本。如果您不是Oracle的注册用户,则要下载此文件,可能会要求您登录/注册(无害)。
Step4:使用命令行( sudo dpkg -i /path/to/deb/file/jdk-11.0.x_linux-x64_bin.deb )或任何gui工具安装下载的.deb文件gdebi等)。默认情况下,.deb将安装在以下位置- /usr/lib/jvm/jdk-11.0.x (x是您下载的版本)。
第5步:打开一个新终端。运行以下命令(根据您的版本进行调整):
cd /usr/lib/jvm/jdk-11.0.x
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk-11.0.5/bin/java" 0
exit
第6步:要进行验证,请打开新终端并发出
java -version
您应该获得输出(类似于此):
java version "11.0.5" 2019-10-15 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.5+10-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode)
你们都准备好了.. !!
稍后,您可以将JAVA_HOME = / usr / lib / jvm / jdk-11.0.5 /添加到您的.bashrc文件中。
答案 8 :(得分:0)
sudo apt-get install openjdk-11-jdk
在此之后,尝试
java -version
要确保Java版本为1.11.x,如果发现旧版本或旧版本,请检查以下命令以查看可用的jdks,
sudo update-java-alternatives --list
您应该看到类似以下的内容,
java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64
java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64
您可以从上面的列表中看到可用的Java 1.11,使用下面的命令将Java 11设置为默认值,
sudo update-alternatives --config java
对于上面的命令,您将获得类似下面的内容,并且还会要求设置选项,
替代java(提供/ usr / bin / java)有3种选择。
选择路径优先状态
0 / usr / lib / jvm / java-11-openjdk-amd64 / bin / java 1111自动模式
1 / usr / lib / jvm / java-11-openjdk-amd64 / bin / java 1111手动模式
* 2 / usr / lib / jvm / java-8-openjdk-amd64 / jre / bin / java 1081手动模式
3 /usr/lib/jvm/jdk1.8.0_211/bin/java 0手动模式
按以保留当前选择[*],或键入选择编号:
您可以选择所需的选择编号,我的情况是0
对于Javac,
sudo update-alternatives --config javac
结果将如下所示,
替代javac(提供/ usr / bin / javac)有3种选择。
选择路径优先状态
0 / usr / lib / jvm / java-11-openjdk-amd64 / bin / javac 1111自动模式
1 / usr / lib / jvm / java-11-openjdk-amd64 / bin / javac 1111手动模式
* 2 / usr / lib / jvm / java-8-openjdk-amd64 / bin / javac 1081手动模式
3 /usr/lib/jvm/jdk1.8.0_211/bin/javac 0手动模式按以保留当前选择[*],或键入选择编号:
就我而言,又是0
完成上述步骤后,尝试
java -version
它将显示如下内容,
openjdk版本“ 11.0.4” 2019-07-16
OpenJDK运行时环境(内部版本 11.0.4 + 11-post-Ubuntu-1ubuntu218.04.3)
OpenJDK 64位服务器VM(内部版本11.0.4 + 11-post-Ubuntu-1ubuntu218.04.3,混合>模式,共享)
答案 9 :(得分:0)
刚刚将旧的 Ubuntu 版本更新为 openJDK 11
实际上我只需要 Jenkins 使用它,它似乎工作正常。
Ubuntu 12.04(精确):
从openjdk-lts (11.0.4+11-1~12.04) precise下载
文件:
openjdk-11-jre-headless_11.0.4+11-1~12.04_amd64.deb
openjdk-11-jre_11.0.4+11-1~12.04_amd64.deb
Ubuntu 14.04(可信赖):
从openjdk-lts (11.0.5+10-2ubuntu1~14.04) trusty下载
文件:
openjdk-11-jre-headless_11.0.5+10-2ubuntu1_14.04_amd64.deb
openjdk-11-jre_11.0.5+10-2ubuntu1_14.04_amd64.deb
安装
下载后,我使用 Ubuntu 软件中心安装了文件(首先是“无头”!)
然后我用 sudo update-alternatives --config java
我不必更改任何环境变量(如 JAVA_HOME)——也许 Jenkins 并不关心它们...
答案 10 :(得分:0)
如果你想使用官方oracle jdk。 然后从 oracle 网站下载 jdk 11 或最新版本:https://www.oracle.com/java/technologies/javase-downloads.html
然后使用此命令安装: sudo dpkg -i 你下载的文件
然后使用 /etc/profile 文件添加到您的 PATH 中。
就我而言,它使用 ubuntu 20.04 100% 工作
注意:官方 oracle jdk 免费仅用于开发。