AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 699507
Accepted
cocomac
cocomac
Asked: 2022-04-19 15:35:42 +0800 CST2022-04-19 15:35:42 +0800 CST 2022-04-19 15:35:42 +0800 CST

如何在 Debian 11 (Bullseye) 上安装 Java 8?

  • 772

这个答案解释了为什么它被删除。我对原因不感兴趣,相反,我需要安装它。这个虚拟机专门用于我的 Java 应用程序,所以我对使用容器并不感兴趣。该答案提到您可以从 Stretch 存储库中获取它,但我不想创建 Franken-Debian,所以我不确定这是否是个好主意。我需要从 OpenJDK 安装 Java 8 JRE。我安装了 Debian 11,并且由于管理程序错误*而使用了高级安装。

这是我为安装它所做的:

$ sudo apt update
...
$ sudo apt install openjdk-8-jre
Reading package lists... Done
Building dependency tree... Done
Building state information... Done
Package openjdk-8-jre is not available, but is referenced to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another sources
However the following packages replace it:
  nvidia-openjdk-8-jre

E: Package 'openjdk-8-jre' has no installation candidate

如果有帮助,这是我的/etc/apt/sources.list文件:

... commented lines ommitted ...

deb http://deb.debian.org/debian/ bullseye main non-free contrib
deb-src http://deb.debian.org/debian/ bullseye main non-free contrib

deb http://security.debian.org/debian/security bullseye-security main contrib non-free
deb-src http://security.debian.org/debian-security bullseye-security main contrib non-free

deb http://deb.debian.org/debian/bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian/bullseye-updates main contrib non-free

所以,我尝试搜索它......但它不存在(我正在使用 Bullseye/11 - 当前的稳定版本)。有趣的是,它在 Debian Stretch中。除了...我想使用 Bullseye,因为它是稳定的,而不是 Stretch。那么我应该如何在 Bullseye 中安装 OpenJDK 8 JRE?

我应该将 Stretch 存储库添加到我的sources.list? 他们建议不要这样做,那么获取 Java 8 的正确方法是什么?


*我的管理程序要求在使用 UEFI 时grub-install具有标志。--removableIDK 为什么它需要,但我必须使用高级安装来启用可移动标志。不过,这应该无关紧要。

debian apt
  • 3 3 个回答
  • 11100 Views

3 个回答

  • Voted
  1. Rizzer
    2022-04-19T16:28:33+08:002022-04-19T16:28:33+08:00

    过去 Debian 软件包的副本可在http://snapshot.debian.org/获得

    你可以在那里搜索openjdk-8。最后一个可用的版本是 8u322-b06-1~deb9u1,记录在http://snapshot.debian.org/package/openjdk-8/8u322-b06-1%7Edeb9u1/ 你可以下载二进制包(.deb)您的架构并使用sudo dpkg -i *.deb.

    它是否有效取决于构建它的库版本。8u312-b07-1(和其他旧版本)也可用。

    或者,您可以在https://tracker.debian.org/pkg/openjdk-8访问软件包的 Debian 跟踪页面。openjdk-8 仍然在那里列为可用于不稳定的(作为版本 8u312-b07-1)。如果您单击二进制包的链接,它们将引导您下载 deb 包的链接。

    snapshot.debian.org 可以说对于临时下载更简单,因为它在一个地方有 deb 文件(debian 包存储库在http://ftp.us.debian.org/debian/pool/main/o/中找到它们openjdk-8/或其镜像站点)

    snapshot.debian.org 还建议配置sources.list 的说明。但是,如果软件包不太可能经常更新,那么手动下载 deb 文件可能会更简单。

    • 4
  2. Best Answer
    cocomac
    2022-04-19T16:22:59+08:002022-04-19T16:22:59+08:00

    转到收养*。进入发布页面,OS选择Linux,架构选择x64(假设你有AMD64/x64机器),版本选择8,包类型选择JRE(或者如果需要编译代码,选择JDK ),然后下载tar.gz文件。

    提取文件:

    $ tar xf OPENJDK8U-[something].tar.gz
    

    进入解压后的目录,进入 bin 文件夹(我不小心得到了 JDK 而不是 JRE,所以我将使用它进行演示):

    cd jdk8u[something]
    cd bin
    

    查看版本是否正确:

    $ ./java -version
    openjdk version "1.8.0_322"
    OpenJDK Runtime Environment (Temurin)(build [something])
    OpenJDK 64-Bit Server VM (Temurin)(build [something], mixed mode)
    

    让我们将其添加到我们的路径中:

    export PATH=$PATH:/path/to/it/jdk8u322-b06/bin
    

    如果您希望它始终位于路径中,请将其添加到您的~/.bashrc文件中(当然,如果您使用的是 Bash)。

    现在测试它:

    $ cd ~
    $ java -version
    ...
    

    完毕!


    *他们制作预编译的 OpenJDK,他们以前是 AdoptOpenJDK

    • 2
  3. Eric Duminil
    2022-04-20T01:47:38+08:002022-04-20T01:47:38+08:00

    由于 Oracle 更改了 Java 许可,Bellsoft (非附属公司)在提供openJDK 安装程序方面做得很好。他们只是工作,你可以选择:

    • JDK/JRE
    • 爪哇 8 / 11 / 17 / 18
    • 有或没有 JavaFX
    • Windows / Debian / Redhat / Alpine / Solaris / macOs 安装程序

    您一定会在https://bell-sw.com/pages/downloads/#/java-8-lts找到正确的安装程序。

    如果您愿意,可以安装多个 Java 版本。如果您需要在版本之间进行切换,您可能会对这个答案感兴趣。

    • 1

相关问题

  • GRUB 配置以识别同一 Linux 发行版的不同桌面环境(安装)

  • astyle 不会更改源文件格式

  • 接收有关全新 Debian 的电子邮件

  • Debian Stretch:libgs_plugin_systemd-updates.so 中的 gnome-software 段错误

  • 如何在拼音输入法中输入ü?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve