手順をメモしておきます。
- OS のパッケージ管理の仕組みや SDKMAN などを使う方法もありますが、この記事では素朴にアーカイブをダウンロードしてインストールする手順について扱います
- Java(OpenJDK)には複数のディストリビューションがあるのですが、今回は Temurin というディストリビューションを使います
- Windows, Mac での手順も気が向いたら追記するかも。だいたい同じだと思います。
Linux(Ubuntu 24.04)
クリーンな環境で試す目的で Docker コンテナを使っていて、その都合で root ユーザで作業しています。それ以外に root でなければいけない理由はありませんので、ユーザやパスは適宜読み替えてください。
docker run \
--rm -it -v "$(pwd):/root/work" \
ubuntu:24.04
ダウンロードページ
https://adoptium.net/temurin/releases/
ここで「JRE」を選択するのがポイント。
OpenJDK21U-jre_x64_linux_hotspot_21.0.7_6.tar.gz というファイルがダウンロードできました。
Q: JDK じゃだめなの?
A: JDK を選んでもたぶん大丈夫です。
JDK = JRE + コンパイラ(javac)などの開発用ツール
なので、Java のプログラムのコンパイルなどが不要なら JRE で問題ないはず。
ちなみに JDK は Java Development Kit、JRE は Java Runtime Environment の略です。
アーカイブを展開します。
tar xvf OpenJDK21U-jre_x64_linux_hotspot_21.0.7_6.tar.gz
展開するとjdk-21.0.7+6-jre というディレクトリができ、その中に bin/, bin/ の中に java コマンドなどが入っています。
jdk-21.0.7+6-jre/
bin/
java
...
...
上記の bin/ にパスを通します。
export PATH="/root/work/jdk-21.0.7+6-jre/bin:${PATH}"
パスが通って java コマンドが使えるようになっていればOK。
# which java
/root/work/jdk-21.0.7+6-jre/bin/java
# java --version
openjdk 21.0.7 2025-04-15 LTS
OpenJDK Runtime Environment Temurin-21.0.7+6 (build 21.0.7+6-LTS)
OpenJDK 64-Bit Server VM Temurin-21.0.7+6 (build 21.0.7+6-LTS, mixed mode, sharing)
あとは JRuby のサイト からアーカイブをダウンロードして展開してパスを通せば jruby コマンドが使えるようになります。
wget https://repo1.maven.org/maven2/org/jruby/jruby-dist/10.0.0.1/jruby-dist-10.0.0.1-bin.tar.gz
tar xvf jruby-dist-10.0.0.1-bin.tar.gz
export PATH="/root/work/jruby-10.0.0.1/bin:${PATH}"
# which jruby
/root/work/jruby-10.0.0.1/bin/jruby
# jruby -v
jruby 10.0.0.1 (3.4.2) 2025-05-07 79cf1e4aec OpenJDK 64-Bit Server VM 21.0.7+6-LTS on 21.0.7+6-LTS +indy +jit [x86_64-linux]
# cat hello.rb
puts "hello"
# jruby hello.rb
hello
ちなみに Java のパスが通っていない状態だと以下のようなエラーになります。
# jruby -v
jruby: Error: Java executable not found!
jrubyc コマンドを使ったスクリプトのコンパイルも試してみます。
# cat hello.rb
puts "hello"
# jrubyc hello.rb
# jruby hello.class
hello
コンパイルする場合は JRE じゃなくて JDK が必要かな? と思いましたが、JRE でも大丈夫なんですね。
この記事を読んだ人は(ひょっとしたら)こちらも読んでいます
