如何在Ubuntu 20.04 LTS Linux上安装Java
如何在Ubuntu 20.04 LTS Linux系统上安装Java吗?
Java是最流行的软件和规范之一,最初由Sun Microsystems的James Gosling创建。
我们可以使用Java为手机或台式机用户创建跨平台应用程序。
目前,Java由Oracle Corporation拥有。
OpenJDK和Oracle Java是Java规范最突出的实现。
Oracle Java附带有限制性许可证,并且是企业用户首选的许可证。
OpenJDK是Ubuntu 20.04 LTS和许多Linux发行版的默认设置。
让我们看看如何在Ubuntu Linux 20.04 LTS上安装Java Runtime Environment(JRE)和Java Development Kit(JDK)。
如何在Ubuntu 20.04 LTS上安装Java
Ubuntu Linux随附OpenJDK版本8和11。
让我们使用apt-cache命令和sort命令查找有关版本的信息:
$ apt-cache --names-only search 'openjdk-[0-9]*-(jre|jdk)' | sort -t '-' -k 2 -n
可以安装不同版本的JDK和JRE:
openjdk-8-jdk - OpenJDK Development Kit (JDK) openjdk-8-jdk-headless - OpenJDK Development Kit (JDK) (headless) openjdk-8-jre - OpenJDK Java runtime, using Hotspot JIT openjdk-8-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless) openjdk-8-jre-zero - Alternative JVM for OpenJDK, using Zero/Shark openjdk-11-jdk - OpenJDK Development Kit (JDK) openjdk-11-jdk-headless - OpenJDK Development Kit (JDK) (headless) openjdk-11-jre - OpenJDK Java runtime, using Hotspot JIT openjdk-11-jre-dcevm - Alternative VM for OpenJDK 11 with enhanced class redefinition openjdk-11-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless) openjdk-11-jre-zero - Alternative JVM for OpenJDK, using Zero openjdk-13-jdk - OpenJDK Development Kit (JDK) openjdk-13-jdk-headless - OpenJDK Development Kit (JDK) (headless) openjdk-13-jre - OpenJDK Java runtime, using Hotspot JIT openjdk-13-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless) openjdk-13-jre-zero - Alternative JVM for OpenJDK, using Zero openjdk-14-jdk - OpenJDK Development Kit (JDK) openjdk-14-jdk-headless - OpenJDK Development Kit (JDK) (headless) openjdk-14-jre - OpenJDK Java runtime, using Hotspot JIT openjdk-14-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless) openjdk-14-jre-zero - Alternative JVM for OpenJDK, using Zero
无终端(显示器键鼠)版本适用于不需要JAVA桌面GUI组件的服务器用户。
步骤1在Ubuntu 20.04 LTS上安装OpenJDK版本14
更新存储库,然后使用apt命令安装OpenJDK版本14:
$ sudo apt update $ sudo apt upgrade $ sudo apt install openjdk-14-jdk ## for servers try headless version ## $ sudo apt install openjdk-14-jdk-headless
在Ubuntu服务器上安装OpenJDK版本14
第2步验证
让我们打印Java版本:
$ java --version
openjdk version "14.0.1" 2020-04-14 OpenJDK Runtime Environment (build 14.0.1+7-Ubuntu-1ubuntu1) OpenJDK 64-Bit Server VM (build 14.0.1+7-Ubuntu-1ubuntu1, mixed mode, sharing)
步骤3安装Java/OpenJDK的多个版本
我们可以在Ubuntu上安装多个版本。
它允许我们根据Java版本运行不同的应用程序。
例如,在这里我将安装OpenJDK 11:
$ sudo apt install openjdk-11-jdk
设置默认的Java版本
我们可以使用符号链接来设置默认的Java版本。
例如,更改默认的Java版本,运行update-alternatives命令:
$ sudo update-alternatives --config java
确保输入要用作默认Java的版本号,然后按Enter键:
There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ----------------------------------------------------------- * 0 /usr/lib/jvm/java-14-openjdk-amd64/bin/java 1411 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode 2 /usr/lib/jvm/java-14-openjdk-amd64/bin/java 1411 manual mode Press to keep the current choice[*], or type selection number: 1 update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/java to provide /usr/bin/java (java) in manual mode
我将版本更改为JDK11。
让我们打印默认版本:
$ java --version
openjdk 11.0.8 2020-07-14 OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04) OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)
步骤4设置JAVA_HOME环境变量
使用bash的export命令的语法如下:
export JAVA_HOME=/path/to/openjdk # For OpenJDK version 14 # export JAVA_HOME=/usr/lib/jvm/java-14-openjdk-amd64 # For OpenJDK version 11 # export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
使用echo命令/printf命令显示设置:
echo $JAVA_HOME printf "Java HOME PATH : %s\n" $JAVA_HOME
最后,更新环境变量配置文件并按如下所示设置JAVA_HOME:
$ sudo vim /etc/environment ## 或者 $ sudo nano /etc/environment
追加设置:
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
保存并关闭文件。
如何为单个用户设置JAVA_HOME
在/etc/environment文件中设置的JAVA_HOME适用于所有Linux用户。
但是,单个用户和应用程序可以使用~/.bash_profile或~/.bashrc覆盖JAVA_HOME和PATH设置。
例如,Linux用户可以将PATH设置追加到文件末尾,如下所示:
echo "export JAVA_HOME='/usr/lib/jvm/java-11-openjdk-amd64'" >> ~/.bashrc echo "export PATH='$PATH:/usr/lib/jvm/java-11-openjdk-amd64/bin'" >> ~/.bashrc
步骤5通过编写Hello World程序来测试Java版本
使用文本编辑器(如vim/nano)创建一个名为HelloWorld.java的新文件:
$ vim HelloWorld.java
追加以下代码:
// Old good Hello World in Java: // https://docs.oracle.com/javase/tutorial/getStarted/application/index.html import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class HelloWorld { public static void main(final String[] args) { final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("h:mm:ss a 'on' MMMM d, yyyy'.'"); final LocalDateTime now = LocalDateTime.now(); System.out.println("Hello, World! The current time is " + dtf.format(now)); } }
运行:
java HelloWorld.java
Hello, World! The current time is 8:47:20 AM on September 12, 2020.