0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在Ubuntu 22.04安装Java

CHANBAEK 来源:myfreax 作者:myfreax 2022-12-12 17:25 次阅读

Java是用于构建各种应用程序和系统的最流行的编程语言之一。Java可以在所有主流的操作系统和设备运行。您可以在手机和游戏机找到使用用Java开发的应用程序。

Java有多种不同的实现。Open JDK和Oracle Java是Java的两个主要实现,它们之间几乎没有区别,只是Oracle Java具有一些附加的商业功能。

Oracle Java许可证仅允许该软件的非商业使用,例如个人使用和开发使用。

默认的Ubuntu 22.04软件源包含两个OpenJDK软件包:Java Runtime Environment JRE和Java Development Kit JDK。

JRE由Java虚拟机JVM,类和二进制文件组成,可让您运行Java程序。JDK包含构建Java应用程序所需的JRE以及开发/调试工具和库。

如果不确定要安装哪个Java软件包,通常建议安装OpenJDK版本11。一些基于Java的应用程序可能需要特定版本的Java,因此您应该查阅应用程序文档来确定使用的java版本。

安装 OpenJDK 11

在撰写本文时,Java 11是Java的最新长期支持版本LTS。它也是Ubuntu 22.04中默认的Java开发和运行时。

以root或具有sudo权限的用户运行以下命令,以更新软件包索引并安装Open JDK 11 JDK软件包。

如果仅需要JRE,则安装openjdk-11-jre。如果你为了使Java运行时占用空间最少,请安装openjdk-11-jdk-headless

安装完成后,您可以运行命令java -version打印java版本号。至此,您已经在Ubuntu 22.04安装Java 11。JRE包含在JDK软件包中。

sudo apt update
sudo apt install openjdk-11-jdk
java -version

安装 OpenJDK 8

以前的Java LTS版本Java 8仍然被广泛使用。如果您的应用程序仅在Java 8上运行,则可以运行命令sudo apt install openjdk-8-jdk进行安装。

如果仅需要JRE,则安装openjdk-8-jre。如果你为了使Java运行时占用空间最少,请安装openjdk-8-jdk-headless

安装完成后,您可以运行命令java -version打印java版本号。至此,您已经在Ubuntu 22.04安装Java 8。JRE包含在JDK软件包中。

sudo apt update
sudo apt install openjdk-8-jdk
java -version

设置Java 默认版本

如果您的Ubuntu 22.04安装多个Java版本,则可以运行命令sudo update-alternatives --config java检查将哪个版本设置为默认版本。

命令将会打印一个列表,其中*开头的行表示默认使用的Java版本。要查看当前的Java版本。可以运行命令java -version检查当前使用的版本。

如果需要更改默认版本,输入您要用作默认版本的数字,然后按Enter。完成设置后请再次运行命令java -version确认是否设置成功。

sudo update-alternatives --config java
java -version
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      manual mode
  2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode
Press  to keep the current choice[*], or type selection number:

除了更改默认的java的版本之外,你还需要更改javac的默认版本,也就是java编译器的版本。建议java和javac使用相同的版本号,避免因版本导致的问题。

修改javac默认版本与修改默认java版本类似。可以运行命令sudo update-alternatives --config javac更改javac的版本。

同样,命令将为您提供所有已安装的javac版本的列表。输入您要用作默认版本的版本号,然后按Enter

sudo update-alternatives --config javac
javac -version

JAVA HOME 环境变量

某些Java应用程序使用JAVA_HOME环境变量来确定Java安装位置。要设置JAVA_HOME变量。请先运行命令sudo update-alternatives --config java查找Java安装路径。

在配置JAVA_HOME环境变量时,你应该始终使用设置为默认java版本的路径,如果设置为其它版本路径,就会带来因版本错误的问题。

在此教程中,安装路径分别是OpenJDK 11位于/usr/lib/jvm/java-11-openjdk-amd64/bin/java

OpenJDK 8位于/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java

找到默认版本Java的安装路径后,使用你喜欢的文本编辑器打开etc/environment文件。etc/environment是系统范围的配置文件,所有用户都可以使用。

在本教程中我们使用vim编辑文件etc/environment。假设您要设置JAVA_HOME指向OpenJDK 11。完成后保存文件并退出vim。

sudo vim etc/environment
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"

etc/environment

要使更改在您当前的shell会话生效,您可以注销重新登录或者运行source命令加载环境变量。

要验证是否正确设置JAVA_HOME环境变量,可以运行命令echo $JAVA_HOME,您应该看到Java安装的路径。

source etc/environment
echo $JAVA_HOME

卸载 Java

您可以使用apt像卸载任何其他软件包一样卸载Java。例如,要卸载jdk软件包,请输入:

sudo apt remove openjdk-11-jdk

结论

默认的Ubuntu 22.04软件源中提供OpenJDK 11和OpenJDK 8,可以使用apt软件包管理器进行安装。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2904

    浏览量

    102978
  • Ubuntu
    +关注

    关注

    5

    文章

    531

    浏览量

    28794
  • openjdk
    +关注

    关注

    0

    文章

    8

    浏览量

    2272
收藏 人收藏

    评论

    相关推荐

    何在Ubuntu 22.04上搭建ftp服务器

    本文将在Ubuntu 22.04上搭建ftp服务器,对于其他版本Ubuntu系统或者其他系列的Linux发行版,配置都差不多。
    发表于 08-21 09:18 419次阅读
    如<b class='flag-5'>何在</b><b class='flag-5'>Ubuntu</b> <b class='flag-5'>22.04</b>上搭建ftp服务器

    何在ubuntu安装gcc?

    何在ubuntu安装gcc?
    发表于 04-19 09:02

    何在VMware中安装ubuntu 16.04?

    何在VMware中安装ubuntu 16.04如何安装Vitis AI几个常见的docker指令
    发表于 02-24 06:24

    OpenHarmony编译固件新增支持Ubuntu22.04平台

    Beta5及其之前的版本就可以正常在Ubuntu22.04上编译了。安装依赖./build/build_scripts/env_setup.sh下载预编译文件./build
    发表于 02-10 22:43

    ubuntu22.04中构建所需的软件报错怎么解决?

    下午好,现在我正在 LS1043A nxp 开发板上工作,我正在尝试在 ubuntu22.04 中构建所需的软件,但出现以下错误。软件包“python3-crypto”没有安装候选
    发表于 04-06 08:21

    Ubuntu 22.04安装S32DS,密钥的窗口在哪来找?

    你好。我第一次尝试在 Ubuntu 22.04安装 S32DS。我想我输入了错误的激活密钥。取消安装过程并重新启动过程后卡在 6% Check License。我有 trey 重新
    发表于 04-06 07:50

    Ubuntu 22.04构建CST 3.3.1时出错了的原因?怎么处理?

    您好,我正在尝试在 Ubuntu 22.04 中构建 CST 3.3.1,但它立即失败了kmx-cst/code/back_end-engine/src$ make make: *** 没有规则来
    发表于 04-06 06:00

    求分享适用于Ubuntu* 22.04系统的OpenVINO™安装程序包

    找不到适用于 Ubuntu* 22.04 系统的OpenVINO™安装程序包。
    发表于 08-14 14:58

    何在Ubuntu桌面环境上安装Google Chrome ?

    作为全球最受欢迎的网页浏览器,新的 Linux 用户经常会问如何在 Ubuntu安装谷歌浏览器。 这不是一个愚蠢的问题。围绕构建 Linux 的困境,大多数用户试图从 Ubuntu
    发表于 05-05 14:00 2051次阅读

    虚拟机:Ubuntu安装oracle Java的方法

    ubuntu提供的openjdk经常会发生莫名奇妙的错误,比如IDE会突然崩掉之类的.正好java最新版也出来,何不在最新的Ubuntu上尝试一下最新的Java
    的头像 发表于 06-22 17:45 1946次阅读
    虚拟机:<b class='flag-5'>Ubuntu</b><b class='flag-5'>安装</b>oracle <b class='flag-5'>Java</b>的方法

    【赛昉科技昉·星光RISC-V单板计算机试用体验】安装ubuntu Server 22.04及挂载分区

    昉·星光板上运行openwrt了,但是这是通过QEMU的方式运行的,今天主要写自己如何安装镜像和挂载分区的。 1 首先从昉·星光 论坛下载Ubuntu Server 22.04 LTS Kernel
    的头像 发表于 11-14 11:22 1356次阅读
    【赛昉科技昉·星光RISC-V单板计算机试用体验】<b class='flag-5'>安装</b><b class='flag-5'>ubuntu</b> Server <b class='flag-5'>22.04</b>及挂载分区

    何在Ubuntu 20.04安装和配置FTP服务器

    本教程介绍如何在Ubuntu 20.04安装和配置,用于在设备之间共享文件的FTP服务器。
    的头像 发表于 12-05 16:04 3969次阅读

    何在Ubuntu安装RPM文件

    Ubuntu软件源包含数千个deb软件包,可以从Ubuntu软件中心或使用`apt`命令行安装
    的头像 发表于 12-07 17:28 1.1w次阅读

    何在Ubuntu 22.04安装Microsoft Edge浏览器

    、macOS 和 Linux。在 Ubuntu 22.04 或任何其他版本中,默认的 Ubuntu 浏览器是 Mozilla Firefox。但是你可以选择在 Ubuntu
    的头像 发表于 02-20 11:13 9961次阅读

    MS Windows协议轻松远程访问 Ubuntu 22.04 桌面

    导致的错误,Ubuntu 22.04 Beta 之前将其排除在外。 在最近的更新中,这个功能终于回来了。用户现在可以使用更安全且对 MS Windows 友好的协议轻松远程访问 Ubuntu
    的头像 发表于 05-29 11:24 2619次阅读
    MS Windows协议轻松远程访问 <b class='flag-5'>Ubuntu</b> <b class='flag-5'>22.04</b> 桌面