PG日誌

受託系 PG が C# の事を書いています

AndroidStudio 1.3でlombokを導入してみた。

仕事では専らc#使ってるのでJava使ったときの機能不足感と記述の冗長さが気になった*1ので、自宅のAndroid開発環境にlombokを導入してみました。以下、導入した時の手順メモです。

最近リリースされたばかりの、AndroidStudio1.3 + lombok plugin 0.9.6.14で試しています。(Windows環境です。念のため)

始める前に余談ですがAndroidStudioを1.2から1.3に変更したらコードのColorが一部引き継げてませんでした…あれ設定するのめんどくさいんですよねー・・・

Android Studio用のPluginをインストールする

IntelliJ用のPluginみたいですがAndroidStudioにも使えます。

File > Settings... > Plugins

を選択してPlugin管理画面を表示します。
f:id:Takachan:20150919230638p:plain:h300

画面中央のBrowse repositoriesを選択してlombokを検索します。
f:id:Takachan:20150919230829p:plain:h300

Installを選択してインストールが終わったら、AndroidStudioを再起動します。*2

Gradleの編集

Gradle Scriptsからapp用のgradleファイルを編集します。ProjectのTreeを展開してファイルを選択します。
f:id:Takachan:20150919231506p:plain:h200

開いたファイルに以下を追記します。

dependencies {
    /* 以下を追加します。*/
    provided "org.projectlombok:lombok:1.12.6" 
}

もしかして末尾の番号が違うかもしれないので念のため公式サイトで内容を確認する必要があるかもしれません。

lombokが動作するか確認する。

import lombok.Setter;
import lombok.Getter;

public class Sample 
{
    @Setter
    private int autoSetter;

    @Getter
    private int autoGetter;
}

これでこれでコンパイルして異常が無ければ準備OKです。

まとめ

Gradleの編集で何故か躓いてコンパイルが最初は通りませんでした…。そもそもdependenciesセクションが無いからgrepしてしまいましたが、普通に付け足せばいい事に気が付いた後は特に問題ありませんでした。

c#のproperty構文(とまではいかないですが)@Setter/@Getter/@Dataはかなり便利ですね。使う側は大して変わらないかもしれませんが(これ重要ですね)。あと、valを大量使用すると困ったことになるとかならないとか??

参考サイト

上記作業で参考にしたサイトは以下の通りです。ここ見てトラブったら以下サイト見ると幸せになれるかもしれません。
Project Lombok
GitHub - yukihane/HelloLombok: Android Studio 1.2.2/1.3beta で lombok を使用するために行った手順の記録です。

*1:特にandroidアプリだとJava7なのでJava8から導入されたイマドキの構文が一切使えません。

*2:ビルド高速化のためにGradelをoffline modeにしているとトラブル起きるかもしれません。