こんばんはこんにちは、フリューのジョンです。
この記事はフリューAdvent Calendar 2018の12/13分となります。
2018/12/15 JJUG CCC 2018 Fall にて 既存アプリケーションでKotlinを導入してみた というタイトルで登壇します。
そのKotlinつながりでGradle Kotlin DSLについて書こうと思います。
Kotlin DSLとは
さてさてGradleのところを調べていると最近Kotlinという単語を見るようになりました。
どうやら Groovyではなく KotlinのDSLで書こうということらしいです。
個人的に触って感じているメリットとしては、「アプリケーションがKotlinならそのままKotlinでタスクなどを記述できる」という点でしょうか。
既存の書き方より優れている点は今のところは思い当たらないです。
Gradleプロジェクトを作成しよう
Gradle Initializrを使ってみましょう。 せっかくだからKotlinプロジェクトを選択します。
downloadできたzipファイルを解凍して、IntelliJで開いてApp.ktにあるmain関数を実行してみましょう。
Hello Worldとコンソールにでましたね。とりあえず、Gradleプロジェクトとしてアプリケーションが作成できていそうです。
Gradleタスクを書いてみよう
以下のようにbuild.gradle.ktsにタスクを追加してみましょう
// build.gradle.kts tasks { task("helloWorld") { doLast { println("hello kotlin dsl world") } } }
動かしてみましょう。
$ ./gradlew helloWorld
以上です。hello kotlin dsl worldと表示されましたか?
まとめ
1.0になって間もなく、IntelliJで開いてもエラーと表示されているなど、使っていると壁にぶつかるところは多いと思います。
なので、本当に頑張る場合は、公式のサンプルを見比べながらタスクを作成してみてください。