home wiki.fukuchiharuki.me
Menu

キーワード

  • Spring Boot
  • Kotlin
  • Gradle

したいこと

Spring BootをKotlinで書きたい。そのためのGradleを設定したい。

とりあえず動かせたのでそのメモ。

どうやって

複数プロジェクトじゃなくても一段掘っておきたいのでそうしてます。不要な場合はいい感じに読み替えてください。

settings.gradle

rootProject.name = 'hello-kotlin'
include 'web'

build.gradle

buildscript {
        ext {
                springBootVersion = '1.5.9.RELEASE'
                kotlinVersion = '1.2.0'
        }
        repositories {
                mavenCentral()
                maven {
                  url "https://plugins.gradle.org/m2/"
                }
        }
        dependencies {
                classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlinVersion}")
                classpath("org.jetbrains.kotlin:kotlin-allopen:${kotlinVersion}")
                classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        }
}

subprojects {
        apply plugin: 'kotlin'
        apply plugin: 'eclipse'
        sourceCompatibility = 1.8
        repositories {
                mavenCentral()
        }
}

project(':web') {
        apply plugin: 'kotlin-spring'
        apply plugin: 'org.springframework.boot'
        jar {
                baseName = 'demo'
                version = '0.0.1-SNAPSHOT'
        }
        dependencies {
                compile("org.jetbrains.kotlin:kotlin-stdlib:${kotlinVersion}")
                compile('org.springframework.boot:spring-boot-starter-web')
                compile('org.springframework.boot:spring-boot-starter-thymeleaf')
                testCompile('org.springframework.boot:spring-boot-starter-test')
        }
}

ちなみに

Kotlinのために書いているのは次の箇所。

classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlinVersion}")
classpath("org.jetbrains.kotlin:kotlin-allopen:${kotlinVersion}")
apply plugin: 'kotlin'
apply plugin: 'kotlin-spring'
compile("org.jetbrains.kotlin:kotlin-stdlib:${kotlinVersion}")

参考