DEV Community

nabbisen
nabbisen

Posted on • Originally published at scqr.net

Java 21 on Devuan 5 (Debian 12): インストール (手動で)

はじめに

Java 汎用プログラミング言語に関して、OpenJDK の新しい LTS (Long Term Support) バージョンである 21 が先月の 2023 年 9 月 17 日にリリースされました 🎉

Debian 12 - bookwormリポジトリ 上では、現行バージョンはまだ 17 すなわち一つ前の LTS です。

本記事で、21 を手動でインストールする方法を紹介します。ターゲット環境は Debian 12 をもとにしてつくられている Devuan 5 - Daedalus という Linux ディストロです。


別の方法もあります。JDK 21 の "x64 Debian Package" が Oracle から配布されています。それを使うこともできます。

さらに、最新バージョンを試すだけの目的であれば、Oracle から Java 21 の PlayGround 環境も提供されています。こちらはオンラインで利用でき、ローカル環境へのインストールは不要です。

それから、最もかんたんな方法の一つも挙げておきます。"OpenJDK" Docker 公式イメージ を使うことです。"21-bookworm" タグ が公開されています。

環境

  • OS: Devuan 5 Daedalus
    • ベースは Debian 12 bookworm
  • App Engine: OpenJDK 21

チュートリアル

OpenJDK パッケージの取得

公式 Web サイトが出発点になります: https://jdk.java.net/21/

ここでパッケージを取得できます。私は以下のコマンドで取得しました:

$ curl -LO https://download.java.net/java/GA/jdk21/fd2272bbf8e04c3dbaee13770090416c/35/GPL/openjdk-21_linux-x64_bin.tar.gz 
Enter fullscreen mode Exit fullscreen mode

サーバーとローカルのチェックサムを比較することで、ダウンロード結果を検証できます。一例ですが、以下のコマンドで実施できます:

$ echo "$(curl -s https://download.java.net/java/GA/jdk21/fd2272bbf8e04c3dbaee13770090416c/35/GPL/openjdk-21_linux-x64_bin.tar.gz.sha256) openjdk-21_linux-x64_bin.tar.gz" | \  sha256sum -c openjdk-21_linux-x64_bin.tar.gz: OK 
Enter fullscreen mode Exit fullscreen mode

上は、サーバーのチェックサムがローカルと一致することが確認できた、ということを意味します:

$ # ダウンロードしたファイルのチェックサム $ sha256sum openjdk-21_linux-x64_bin.tar.gz a30c454a9bef8f46d5f1bf3122830014a8fbe7ac03b5f8729bc3add4b92a1d0a openjdk-21_linux-x64_bin.tar.gz 
Enter fullscreen mode Exit fullscreen mode

ファイル群の配置

展開します:

$ tar xzf openjdk-21_linux-x64_bin.tar.gz 
Enter fullscreen mode Exit fullscreen mode

結果は以下の通りでした:

$ ls {.,jdk-21} .: jdk-21 openjdk-21_linux-x64_bin.tar.gz jdk-21: bin conf include jmods legal lib release 
Enter fullscreen mode Exit fullscreen mode

jdk-21 ディレクトリを手に入れました。その中には bin などが含まれています 👍

環境変数の設定

PATHJAVA_HOME を設定します。

PATH の設定:

$ # bash の場合 $ export PATH=$(readlink -f ./jdk-21/bin):$PATH $ # fish の場合 $ #set -x PATH $(readlink -f ./jdk-21/bin/):$PATH 
Enter fullscreen mode Exit fullscreen mode

JAVA_HOME の設定:

$ # bash の場合 $ export JAVA_HOME=$(readlink -f .) $ # fish の場合 $ #set -x JAVA_HOME $(readlink -f .) 
Enter fullscreen mode Exit fullscreen mode

準備完了です 🙌

おわりに

これで Java 21 環境を構築できました:

$ java --version openjdk 21 2023-09-19 OpenJDK Runtime Environment (build 21+35-2513) OpenJDK 64-Bit Server VM (build 21+35-2513, mixed mode, sharing) 
Enter fullscreen mode Exit fullscreen mode

試しに実行してみましょうか。.java ファイルを作成しましょう:

$ nvim HelloWorld.java 
Enter fullscreen mode Exit fullscreen mode

そこに以下のように記述します:

public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, world."); } } 
Enter fullscreen mode Exit fullscreen mode

直接ファイルを実行する場合、以下のようにします:

$ java HelloWorld.java Hello, world. 
Enter fullscreen mode Exit fullscreen mode

うまく行きましたね。では次に、手動でコンパイルしてから実行してみましょう:

$ ls HelloWorld* HelloWorld.java $ javac HelloWorld.java $ # .class ファイルが作成されます  $ ls HelloWorld* HelloWorld.class HelloWorld.java $ java HelloWorld Hello, world. 
Enter fullscreen mode Exit fullscreen mode

こんにちは、最新の Devuan さんの上で動く 最新の Java さん ☺

Top comments (0)