如何在 Debian 11 (Bullseye) 上安裝 Java 8?
這個答案解釋了為什麼它被刪除。我對原因不感興趣,相反,我需要安裝它。這個虛擬機專門用於我的 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
具有標誌。--removable
IDK 為什麼它需要,但我必須使用高級安裝來啟用可移動標誌。不過,這應該無關緊要。
轉到收養*。進入發布頁面,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
過去 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 文件可能會更簡單。