JVMツールの簡単インストーラー、sdkmanのことを紹介させてくれ

f:id:blackawa:20171003133129p:plain

SDKMAN! the Software Development Kit Manager

この完全に他のツールとかぶりそうな名前、かつアメコミみたいなアイコンのツールが、まー便利。 わりと前からあるから、みんな知ってるかもしれないし、そもそもこのツールについて人と話したことがあんまりない。けど、個人的に紹介したいからさせてもらう。

sdkmanとは

インストールすると、sdk install xxx みたいな感じでJVM系の各種ツールをインストールできるツール。

なんとJavaもインストールできる。

もうこれで良くない?

使い方

Installation - SDKMAN!を読んでくれ。 brewのインストールと同じでインストールスクリプトbashで実行するだけ。ちょう簡単。 .bashrcとか.zshrcの末尾にちょっと勝手に追記されるから、それだけ確認しておいて。

試してみる

手元のMacはすでに環境構築済みなのでVagrantで建てたubuntuで試す。

vagrant init ubuntu/xenial64
vagrant up
vagrant ssh

# ここからubuntu
curl -s "https://get.sdkman.io" | bash
# unzipコマンドがないよって怒られる。実はunzipを入れても次はzipがないよって言われるので入れておく
sudo apt-get install unzip zip
curl -s "https://get.sdkman.io" | bash
# インストール成功して.bashrcと.zshrcの末尾にちょびっと追記される。
source "/home/ubuntu/.sdkman/bin/sdkman-init.sh"

# インストールできたか調べる
sdk version

# Javaをインストールしてみる
which java # -> 何も返ってこない
sdk install java 9.0.0-zulu
which java # -> /home/ubuntu/.sdkman/candidates/java/current/bin/java
java --version
# openjdk 9.0.0.15
# OpenJDK Runtime Environment (Zulu build 9.0.0.15+181)
# OpenJDK 64-Bit Server VM (Zulu build 9.0.0.15+181, mixed mode)

# Mavenもインストールしてみる
which mvn # -> 何も返ってこない
sdk install maven
which mvn # -> /home/ubuntu/.sdkman/candidates/maven/current/bin/mvn

# 動く
mvn archetype:generate # 当たり前だけどすごい

簡単すぎ。Javaインストールできるってすごい。

既存のツールが入っちゃってる人へ

消して。

brewで入れたなら brew uninstall xxx しよう。 Windowsならバイナリを消して環境変数PATHに入れた設定とかを消せばいいんじゃないかな。

Macならbrewとかportとかあるから、こういうのは特にWindows勢にとってめちゃめちゃ強力なツールになると思うな。