SDKMANでJava JDK のバージョン管理が楽になります。
SDKMANのインストール
インストールは簡単で、公式の通り以下を実行して手順にしたがってターミナル再起動を行ってください。
curl -s "https://get.sdkman.io" | bash
以下の通り、SDKMANのバージョンが出たらインストール完了です。
$ sdk version SDKMAN 5.18.1
使い方
インストール後、 sdk list java
を実行すると以下のような画面が出てきて、どのJavaをインストールするのか選べます。
今、私の環境は 21-amzn
なのがわかりました(以前からインストールしていたので残っていました)。
21-open
に変更してみたいと思います。
$ sdk install java 21-open Downloading: java 21-open In progress... ############################################################################################################################################################################################################ 100.0% Repackaging Java 21-open... Done repackaging... Installing: java 21-open Done installing! Do you want java 21-open to be set as default? (Y/n): Y Setting java 21-open as default. $ sdk current java Using java version 21-open
これで、21-open
に変わりましたね!簡単ですね!
java のバージョンをディレクトリ単位で管理する
プロジェクトごとにバージョンが違うことはよくあります。 .sdkmanrc
に使うバージョンを記載することです。
$ sdk env init .sdkmanrc created. $ cat .sdkmanrc # Enable auto-env through the sdkman_auto_env config # Add key=value pairs of SDKs to use below java=21-open
今の私の環境では先程インストールした 21-open
が使われました。
では、変えてみましょう。
最初に入れていた21-amzn
に書き換えます。
まず、 ~/.sdkman/etc/config
の中の sdkman_auto_env=false
を true
にします。
書き換えた上で別のターミナルから該当するディレクトリに切り替えます。
$ cd sdkman/ Using java version 21-amzn in this shell.
切り替えると、自動的に 21-amzn
に切り替わりましたね。
開発環境のバージョンを揃えるのが容易になったことがわかります。