buildscript { ext { kotlinVersion = '1.2.51' springBootVersion = '2.0.3.RELEASE' } repositories { mavenCentral() // for kotlin and spring boot maven { url "https://plugins.gradle.org/m2/" // for ktlint } } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlinVersion}") classpath("org.jetbrains.kotlin:kotlin-allopen:${kotlinVersion}") classpath "gradle.plugin.org.jlleitschuh.gradle:ktlint-gradle:4.1.0" } } apply plugin: 'kotlin' apply plugin: 'kotlin-spring' apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' apply plugin: "org.jlleitschuh.gradle.ktlint" group 'org.luxons' version '1.0-SNAPSHOT' sourceCompatibility = 1.8 compileKotlin { kotlinOptions { freeCompilerArgs = ["-Xjsr305=strict"] jvmTarget = "1.8" } } compileTestKotlin { kotlinOptions { freeCompilerArgs = ["-Xjsr305=strict"] jvmTarget = "1.8" } } repositories { mavenCentral() jcenter() } dependencies { compile project(':game-engine') compile 'org.jetbrains.kotlin:kotlin-stdlib-jdk8' compile 'org.jetbrains.kotlin:kotlin-reflect' // required by Spring 5 compile 'org.springframework.boot:spring-boot-starter-websocket' compile 'org.springframework.boot:spring-boot-starter-security' // required by spring security when using websockets compile 'org.springframework.security:spring-security-messaging' compile "com.fasterxml.jackson.module:jackson-module-kotlin" compile 'ch.qos.logback:logback-classic:1.1.8' compile 'org.hildan.livedoc:livedoc-springboot:4.3.2' compile 'org.hildan.livedoc:livedoc-ui-webjar:4.3.2' annotationProcessor 'org.hildan.livedoc:livedoc-javadoc-processor:4.3.2' testCompile 'org.springframework.boot:spring-boot-starter-test' testCompile 'org.hildan.jackstomp:jackstomp:2.0.0' } // packages the frontend app within the jar jar { from('../frontend/build') { into 'static' } } // make sure we build the frontend before creating the jar jar.dependsOn(':frontend:assemble')