Gradleを使うにあたってGVMをインストールする事にしましたので使い方をまとめておきます。
GVMとは
GVMはGroovyやGrails、GradleなどGroovy関連のプロダクトのインストールやアップデート、バージョン管理を一元的に行えるツールです。RubyにおけるRVMやrbenvのようなものになります。
事前準備
実行環境は Mac OS X 10.10.2 です。Windowsは知りませんがLinuxも同じような感じで出来るはずです。bash
とcurl
とunzip
コマンドが必要なのでもしインストールされてない場合はインストールする必要があります。
あとインストール後でもいいと思いますが先にJAVA_HOME
を設定します。スクリプトを見てみると設定されてなければ自動でセットするようになってますが、ついでなのでやっておきましょう。JAVAのインストールとJAVA_HOMEの設定については Macで複数バージョンのJava (JDK) をインストールして切り替える方法 を参照して下さい。JDK6以上が必要です。
GVMのインストール
GVM by gvmtool にある通り、curlコマンドでサイトからスクリプトダウンロードしてbashで実行するだけです。
$ curl -s get.gvmtool.net | bash
インストール出来たら次のコマンドを実行するか、再起動で環境設定を更新して下さい。
$ source "/Users/tasukujp/.gvm/bin/gvm-init.sh"
ヘルプが表示されたら完了です。
$ gvm help
~/.bash_profile
~/.bashrc
.zshrc
に以下が書き加えられているはずです。ファイルが無ければ自動的に作成されています。
#THIS MUST BE AT THE END OF THE FILE FOR GVM TO WORK!!! [[ -s "/Users/tasukujp/.gvm/bin/gvm-init.sh" ]] && source "/Users/tasukujp/.gvm/bin/gvm-init.sh"
Gradleのインストール
GVMのinstall
コマンドを使ってGradleをインストールします。
$ gvm install gradle Downloading: gradle 2.3 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (60) SSL certificate problem: Invalid certificate chain More details here: http://curl.haxx.se/docs/sslcerts.html ...省略... Stop! The archive was corrupt and has been removed! Please try installing again.
まさかのエラーが出ました…。別のPCでは特に何もせずに成功したので原因がよくわかりません。調べてみるとcurl
で失敗してるみたいなので~/.curlrc
を作成します。
$ echo insecure >> ~/.curlrc
もう一度実行すると成功しました。
$ gvm install gradle Downloading: gradle 2.3 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 354 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 100 57.2M 100 57.2M 0 0 8170k 0 0:00:07 0:00:07 --:--:-- 11.2M Installing: gradle 2.3 Done installing! Do you want gradle 2.3 to be set as default? (Y/n): y Setting gradle 2.3 as default.
Gradleのバージョンを指定してインストール
バージョンを指定しないと最新の安定版がインストールされますが、特定のバージョンをインストールする事も可能です。
バージョンの一覧を確認
インストール可能なバージョンが表示されます。現在インストール済みのバージョンと使用しているバージョンも確認できます。
$ gvm list gradle
バージョンを指定してインストール
バージョンを付けてインストールコマンドを実行します。
$ gvm install gradle 1.9
使用するバージョンを指定
複数のバージョンをローカルインストールしたらデフォルトバージョンを指定します。
$ gvm default gradle 1.9
Gradleのインストール先
Gradleは~/.gvm/gradle
以下にインストールされます。
$ ls -l .gvm/gradle/ total 8 drwxr-xr-x 13 tasukujp staff 442 11 19 2013 1.9 drwxr-xr-x 13 tasukujp staff 442 2 16 06:16 2.3 lrwxr-xr-x 1 tasukujp staff 31 4 11 21:48 current -> /Users/tasukujp/.gvm/gradle/1.9
GVMのその他コマンド
上記以外のコマンドも基本的な使い方はgvm help
で分かると思いますが、その他のコマンドについていくつか書きます。
useとdefaultの違い
gvm default
で各プロダクトの使用するバージョンを指定しますが、gvm use
というコマンドもあります。これもバージョンを変更するコマンドですが、公式サイトに for the current shell only と書かれている通り、現在起動しているシェルの間だけバージョンを変更します。そのため再起動した場合は元のバージョンに戻ってしまうので注意が必要です。
$ gvm use gradle 1.9 Using gradle version 1.9 in this shell. $ gradle -v ------------------------------------------------------------ Gradle 1.9 ------------------------------------------------------------ 再起動 Last login: Sat Apr 11 23:58:35 on ttys000 $ gradle -v ------------------------------------------------------------ Gradle 2.3 ------------------------------------------------------------
offlineでオフラインモードの切り替え
GVMはインストール可能なパッケージの最新情報を取得するため、起動毎にネットに接続しますが、オフライン状態の場合はタイムアウトになるまで応答が返ってこなくなります。このような場合にオフラインモードを切り替えると不要な待ち時間がなくなります。
$ gvm offline enable Forced offline mode enabled. $ gvm offline disable Online mode re-enabled!
outdatedとselfupdateでアップデート
gvm outdated
で各プロダクトのアップデート、gvm selfupdate
でGVM自身のアップデートが出来ます。
$ gvm outdated All candidates are up-to-date $ gvm selfupdate No update available at this time.
はてぶコメントで指摘がありましたので訂正。
gvm outdated
はアップデートがあるかの確認で、インストール自体は個別に行う必要があります。
$ gvm outdated Outdated: gradle (1.9, 2.3 < 2.4)
currentでバージョン確認
現在インストールされてるプロダクトに指定しているバージョンが一覧で見れます。
$ gvm current Using: gradle: 2.3
flushで削除
gvm flush
に指定できるのは<candidates|broadcast|archives|temp>
ですが、どうやら削除コマンドのようです。あまり使うことはなさそう。
$ gvm flush archives 2 archive(s) flushed, freeing 109M /Users/tasukujp/.gvm/archives.
broadcastで確認
GVMのお知らせみたいなものですかね。
$ gvm broadcast ==== BROADCAST ================================================================= * 02/04/15: Grails 3.0.1 has been released on GVM. #grailsfw * 01/04/15: Springboot 1.2.3.RELEASE has been released on GVM. #springboot * 01/04/15: Springboot 1.1.12.RELEASE has been released on GVM. #springboot ================================================================================
Gradleのインストールについて補足
GradleについてはHomebrewからもインストールする事が可能です。バージョンを指定してインストールしたい場合は Homebrew-versions を入れます。
$ brew install gradle
GVMを使ってGradleをインストールした場合は、GVMが自動的にパスの設定を追加してくれますが、Homebrewを使用した場合は自身でPATHを追加する必要があります。PATHの追加だけでも問題ありませんが、分かりやすくするためにGRADLE_HOMEも設定しています。
$ vi ~/.bash_profile export GRADLE_HOME=/usr/local/Cellar/~ export PATH=$GRADLE_HOME/bin:$PATH
参考書籍
翔泳社
売り上げランキング: 152,853