Backend/build.gradle.kts

109 lines
3.7 KiB
Plaintext
Raw Normal View History

import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
group = "dev.fyloz.colorrecipesexplorer"
2021-05-06 21:36:25 -04:00
val kotlinVersion = "1.5.0"
val springBootVersion = "2.3.4.RELEASE"
plugins {
2021-05-06 21:36:25 -04:00
// Outer scope variables can't be accessed in the plugins section, so we have to redefine them here
val kotlinVersion = "1.5.0"
val springBootVersion = "2.3.4.RELEASE"
id("java")
2021-05-06 21:36:25 -04:00
id("org.jetbrains.kotlin.jvm") version kotlinVersion
id("org.jetbrains.dokka") version "1.4.32"
id("org.springframework.boot") version springBootVersion
id("org.jetbrains.kotlin.plugin.spring") version kotlinVersion
id("org.jetbrains.kotlin.plugin.jpa") version kotlinVersion
}
repositories {
mavenCentral()
maven {
url = uri("https://git.fyloz.dev/api/v4/projects/40/packages/maven")
}
}
dependencies {
2021-05-06 21:36:25 -04:00
implementation(platform("org.jetbrains.kotlin:kotlin-bom:${kotlinVersion}"))
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlinVersion}")
implementation("org.jetbrains.kotlin:kotlin-reflect:${kotlinVersion}")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin:2.11.3")
2020-11-17 14:53:02 -05:00
implementation("javax.xml.bind:jaxb-api:2.3.0")
implementation("io.jsonwebtoken:jjwt:0.9.1")
implementation("org.apache.poi:poi-ooxml:4.1.0")
implementation("org.apache.pdfbox:pdfbox:2.0.4")
implementation("dev.fyloz.colorrecipesexplorer:database-manager:5.1")
2021-05-06 21:36:25 -04:00
implementation("org.springframework.boot:spring-boot-starter-data-jpa:${springBootVersion}")
implementation("org.springframework.boot:spring-boot-starter-jdbc:${springBootVersion}")
implementation("org.springframework.boot:spring-boot-starter-web:${springBootVersion}")
implementation("org.springframework.boot:spring-boot-starter-validation:${springBootVersion}")
implementation("org.springframework.boot:spring-boot-starter-security:${springBootVersion}")
implementation("org.springframework.boot:spring-boot-configuration-processor:${springBootVersion}")
implementation("org.springframework.boot:spring-boot-devtools:${springBootVersion}")
2020-10-15 23:38:13 -04:00
2020-11-17 14:53:02 -05:00
testImplementation("org.springframework:spring-test:5.1.6.RELEASE")
testImplementation("org.mockito:mockito-inline:3.6.0")
2020-11-17 14:53:02 -05:00
testImplementation("com.nhaarman.mockitokotlin2:mockito-kotlin:2.2.0")
testImplementation("org.junit.jupiter:junit-jupiter-api:5.3.2")
testImplementation("io.mockk:mockk:1.10.6")
2021-05-06 21:36:25 -04:00
testImplementation("org.springframework.boot:spring-boot-starter-test:${springBootVersion}")
testImplementation("org.springframework.boot:spring-boot-test-autoconfigure:${springBootVersion}")
testImplementation("org.jetbrains.kotlin:kotlin-test:${kotlinVersion}")
runtimeOnly("com.h2database:h2:1.4.199")
2020-12-23 14:45:21 -05:00
runtimeOnly("mysql:mysql-connector-java:8.0.22")
runtimeOnly("org.postgresql:postgresql:42.2.16")
runtimeOnly("com.microsoft.sqlserver:mssql-jdbc:9.2.1.jre11")
implementation("org.springframework.cloud:spring-cloud-starter:2.2.8.RELEASE")
}
java {
2021-02-11 13:32:22 -05:00
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
2020-11-17 14:53:02 -05:00
}
sourceSets {
main {
java
kotlin
}
test {
kotlin
}
}
tasks.test {
reports {
junitXml.isEnabled = true
html.isEnabled = false
}
useJUnitPlatform()
testLogging {
2021-03-08 13:56:59 -05:00
events("skipped", "failed")
}
}
tasks.withType<JavaCompile>() {
2021-02-11 13:32:22 -05:00
options.compilerArgs.addAll(arrayOf("--release", "11"))
}
tasks.withType<KotlinCompile>().all {
2021-03-09 14:08:57 -05:00
kotlinOptions {
jvmTarget = JavaVersion.VERSION_11.toString()
2021-03-09 14:08:57 -05:00
useIR = true
freeCompilerArgs = listOf(
2021-05-06 21:36:25 -04:00
"-Xopt-in=kotlin.contracts.ExperimentalContracts",
"-Xinline-classes"
)
2021-03-09 14:08:57 -05:00
}
}
tasks.dokkaHtml {
2020-11-17 14:53:02 -05:00
outputDirectory.set(rootDir.resolve("dokka"))
}