unityでいってみよう!

unityがチョットワカル位の人のブログ

SDKMAN!でgradleの任意のバージョンをインストールしてみよう!

はじめに

UnityはAndroid Playerのビルドにgradleを使用しています。 Unity Editor上でバイナリの生成迄行う場合は、気にする必要がないのですが、インクリメンタルビルドを行う場合、Unityが内部で使用しているgradleとコマンドライン(Terminal)で使用するgradleのバージョンを合わせる必要があります。 unityletsgo.hatenablog.com

Unityが内部で使用しているgradleのバージョンを変更することはもちろん可能ですが、UnityはデフォルトのSDK・NDK・Gradle以外の組み合わせ以外に関しては非サポートです。その為、コマンドライン(Terminal)で使用するgradleのバージョンをUnityに合わせた方が良いでえしょう。

今回は、Unityが内部で使用しているものと同じバージョンのgradleをMacへインストールしようというお話しです。

Homebrew

brew.sh

自分はMacの開発環境構築に関しては全然詳しくないのですが、Mac上でのアプリケーションの管理といえばHomebrewを使っている人が多いと思います。Googleで検索するとHomebrewを使ったgradleのインストールの方法をよく見かけます。 以前は以下のようなコマンドでお手軽にバージョンを切り替えられた見たいですが、いつの頃かわかりませんが、Homebrewでは古いバージョンのアプリをインストール出来なくなったようです。(正確には出来なくもないがかなり面倒な手順を踏むようになった)

$ brew switch gradle 5.1.1

SDKMAN!

sdkman.io

gradleのホームページを読んでいると、SDKMAN!でのインストール方法が記載されていました。 どうやら、SDKMAN!を使用すればお手軽にgradleのバージョンを切り替えることが出来るようです。

SDKMAN!のインストール

Terminalで以下のコマンドを実行します。

$ curl -s "https://get.sdkman.io" | bash

インストール後、一度Terminalを閉じて、新規のTerminalを開き直せば、SDKMAN!が使用可能となります。

Gradleのインストール

sdk install gradle バージョン番号 で任意のバージョンのgradleをインストール出来ます。 例えばgradle 6.1.1をインストールする場合はTerminalで以下のコマンドを実行します。

$ sdk install gradle 6.1.1

各Unityが使用しているgradleのバージョンは下記の通りです。

Unity gradle
2018.4LTS 5.1.1
2019.4LTS 5.1.1
2020.3LTS 6.1.1
2021.2 6.1.1
2022.1 6.1.1

例えば、gradle 6.1.1をインストール済みだが、5.1.1を使用したい場合、以下のようにコマンドを入力すると

$ sdk install gradle 5.1.1 

Do you want gradle 5.1.1 to be set as default (Y/n) ?

と聞いてくるのでYを選択すれば、5.1.1が使用できるようになります。

また、再び 6.1.1に戻したい場合、下記のコマンドを実行します。

$ sdk default gradle 6.1.1

おまけ

sdk list gradle

インストール可能なgradleのバージョン一覧及びインストールされているものと、現在デフォルトになっているバージョンが確認出来ます

sdk uninstall gradle バージョン

gradleの特定のバージョンをアンインストールします。