kaakaa Blog

この世は極楽 空にはとんぼ

[Gradle} Gradleトーキョー サンカシテキタヨー

イッテキタヨー

小さいJavaプロジェクトでgradle buildしたことありますよレベルの人間です。
周りでGradle使ってる人もいないので、見識広げるために参加しました。


Gradleトーキョー : ATND
19:00開始だと間違えて30分前に行ったら、誰もいなくて完全不審者だったのはナイショ。


以下、ざっくり概要&感想。


Gradle超入門

Ant,Mavenと比べてGradleどーなのとか、インストール方法とかをザッと流す感じで。
JAVA_HOME設定しておかないと動かないって聞いて、自分のマシン確認したら設定されてなかった時はヒヤッとした。ま、設定されてないままでも特に問題なかったけど。


んで、サンプルプロジェクト作成。
build.gradleに

apply plugin : 'eclipse' 

って書いて

gradle eclipse

ってやれば、eclipseプロジェクト作れる。
まぁ、当然なんだろうけど、やったことなかったから「へ〜」って感じだった。
もちろんeclupseでなく、ideaでもいけます。


んで、カスタムタスク作成。
build.gradleに

task hello << {
    println 'Hello'
}

とかすると、gradle helloってタスクが実行できるよって話。
あと、hello.doFirstとかhello.doLastとか。


お次は規約プロパティ。

gradle properties

で色々情報出てくるからほげほげしたらいーじゃんって感じー

project.configurations each{
    println it.name
}

とかでい〜感じだよ〜みたいな。ココらへん重要そうなのにあんまり聞けてなかった。


Gradleラッパー

詳しく書いてあるブログがあるから読んでね的な


カスタムプラグイン

build.gradleに

dependencies {
    compile gradleApi()
}

と書いて、eclipseプロジェクト作ると、カスタムプラグイン作るために必要なクラスパスを通してくれる。


あとは色々ほげほげ。
上手く作れなかったから、後日挑戦してみようかな。


でも、どんなプラグインが有用なんだろうか。
説明があった気がするけど忘れてしまった。リリース環境作るReleaseプラグインとか良いのかなぁ…



ここで21:00となり終了…かと思いきや「21:30までだろ」との指摘が飛び、急遽Gradleラッパーについての説明。


Gradleラッパー


build.gradleに

task wrapper(type: Wrapper){
    gradleVersion = 1.0
}

を追加して、

gradle wrapper

を実行すると、Gradleがインストールされていない環境でGradleを実行するためのシェル&バッチファイルが生成される。
へぇ…明日やってみよう。
ただし、この方法で実行するときはネットワークに繋がっていることが必須。


てか、急遽始まったGradleラッパーの説明だったけど、何も準備してなくても短い時間でちゃんと説明出来るってすごいなぁ。

最後はネットワーク繋がらずに、エラー画面で終了しちゃってましたけどw



自分ひとりでやってると、Gradle何して良いか分からない状態だったので、カスタムプラグインだったり、規約プロパティだったりGradle学習の入り口が広がった感じ。
参加してよかった。