辞書: Gradle

投稿日: 更新日:

Gradleとは

ビルドを行うためのツールです。

3回くらい挫折(継続中)

Groovyという言語を元に作られているのですが、 文法がさっぱり理解できませんでした。 最初は、Groovyをよく知らないからかなぁと思ったのですが、 同じようにGroovyを採用しているJenkins(Jenkinsfile)は 多少苦労しましたが、それなりに使えてます。

違いはなんだろうと疑問に思っていたのですが、 以下の記述を見て理解できました1

これはめちゃめちゃ混乱させられたんですが、実はGradleは、素のGroovyではなく、Groovyの文法をAST変換を使用して拡張しています。GradleはGroovyの上位互換言語だったんですね。

これを読んで、理解できない理由が分かりました。 プログラムを読むときに脳内で文法解析(脳内lex)をしているのですが、 AST変換が行われることによって、 脳内の文法解析機がエラーを出していたのが原因です。

Kotlin対応

そんなことが3回くらいあって、 Mavenでまあそんなに困ってないのでいいやという感じですが、 開発元も文法の難しさを理解していたのか、Kotlinに対応したようです。

Kotlinは今後の主流となる可能性も高く、使ってみたい言語なので、 せっかくだから、こちらを使ってみたいですね。


  1. Gradleの謎文法(2) タスクの定義 - takayukisの日記

公式サイト

外部サイト