🚧 Make Movie and Performance JSON-serializable
[rhynodge.git] / build.gradle
index af795fc..b8c2653 100644 (file)
@@ -1,12 +1,27 @@
-apply plugin: "java"
+buildscript {
+    ext.kotlinVersion = '1.9.20'
+
+    repositories {
+        mavenCentral()
+    }
+    dependencies {
+        classpath group: "org.ajoberstar", name: "gradle-git", version: "1.1.0"
+    }
+}
+
+plugins {
+    id 'java'
+    id('org.jetbrains.kotlin.jvm') version '1.9.20'
+}
+
 apply plugin: "war"
 apply plugin: "jacoco"
 apply plugin: "idea"
 
 idea {
-       project {
-               languageLevel = "1.8"
-       }
+    project {
+        languageLevel = "17"
+    }
 }
 
 group = "net.pterodactylus"
@@ -15,33 +30,29 @@ version = "0.1"
 sourceCompatibility = 1.8
 targetCompatibility = 1.8
 
-buildscript {
-    repositories {
-        mavenCentral()
-    }
-    dependencies {
-        classpath group: "org.ajoberstar", name: "gradle-git", version: "1.1.0"
-    }
-}
-
 repositories {
-       mavenCentral()
+    mavenCentral()
+    jcenter()
 }
 
 dependencies {
-    compile group: "com.google.guava", name: "guava", version: "14.0-rc1"
-    compile group: "log4j", name: "log4j", version: "1.2.17"
-    compile group: "org.apache.httpcomponents", name: "httpclient", version: "4.4"
-    compile group: "org.jsoup", name: "jsoup", version: "1.7.1"
-    compile group: "javax.mail", name: "mail", version: "1.4.6-rc1"
-    compile group: "org.apache.commons", name: "commons-lang3", version: "3.1"
-    compile group: "com.fasterxml.jackson.core", name: "jackson-core", version: "2.1.2"
-    compile group: "com.fasterxml.jackson.core", name: "jackson-annotations", version: "2.1.2"
-    compile group: "com.fasterxml.jackson.core", name: "jackson-databind", version: "2.1.2"
-
-    testCompile group: "junit", name: "junit", version:"4.12"
-    testCompile group: "org.hamcrest", name: "hamcrest-library", version:"1.3"
-    testCompile group: "org.mockito", name: "mockito-core", version:"1.9.5"
+    implementation group: "org.jetbrains.kotlin", name: "kotlin-stdlib", version: kotlinVersion
+    implementation group: "com.google.guava", name: "guava", version: "14.0-rc1"
+    implementation group: "log4j", name: "log4j", version: "1.2.17"
+    implementation group: "org.apache.httpcomponents", name: "httpclient", version: "4.4"
+    implementation group: "org.jsoup", name: "jsoup", version: "1.16.1"
+    implementation group: "javax.mail", name: "mail", version: "1.4.6-rc1"
+    implementation group: "org.apache.commons", name: "commons-lang3", version: "3.1"
+    implementation group: "com.fasterxml.jackson.core", name: "jackson-databind", version: "2.16.1"
+    implementation group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jsr310', version: '2.16.1'
+    implementation group: 'com.fasterxml.jackson.module', name: 'jackson-module-kotlin', version: '2.16.1'
+    implementation group: "com.google.inject", name: "guice", version: "7.0.0"
+    implementation group: "org.jetbrains.kotlinx", name: "kotlinx-html-jvm", version: "0.11.0"
+    implementation group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.2'
+
+    testImplementation group: "junit", name: "junit", version: "4.13.2"
+    testImplementation group: "org.hamcrest", name: "hamcrest-library", version: "1.3"
+    testImplementation group: "org.mockito", name: "mockito-core", version: "1.9.5"
 }
 
 task fatJar(type: Jar) {
@@ -70,11 +81,13 @@ task createVersion() {
 
 
 import org.ajoberstar.grgit.Grgit
-createVersion << {
-    def gitRepo = Grgit.open(".")
-    version = gitRepo.describe()
-    new File("src/generated/resources").mkdirs()
-    new File("src/generated/resources/version.txt").withWriter() { it.write(version) }
+createVersion {
+    doLast {
+        def gitRepo = Grgit.open(projectDir)
+        version = gitRepo.describe()
+        new File("src/generated/resources").mkdirs()
+        new File("src/generated/resources/version.txt").withWriter() { it.write(version) }
+    }
 }
 
 war {
@@ -82,4 +95,8 @@ war {
     dependsOn(test)
 }
 
+jacoco {
+    toolVersion = "0.7.6.201602180812"
+}
+
 /* vim: set ts=4 sw=4 et: */