-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle.kts
68 lines (57 loc) · 1.83 KB
/
build.gradle.kts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
import org.gradle.api.tasks.testing.logging.TestLogEvent
import org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_21
import org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_2_1
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
kotlin("jvm")
}
tasks.wrapper {
gradleVersion = "8.12"
distributionSha256Sum = "7ebdac923867a3cec0098302416d1e3c6c0c729fc4e2e05c10637a8af33a76c5"
distributionType = Wrapper.DistributionType.ALL
}
kotlin {
jvmToolchain {
languageVersion.set(JavaLanguageVersion.of(21))
vendor.set(JvmVendorSpec.ADOPTIUM)
}
}
tasks {
withType<KotlinCompile>().configureEach {
compilerOptions {
jvmTarget = JVM_21
apiVersion = KOTLIN_2_1
languageVersion = KOTLIN_2_1
allWarningsAsErrors = true
freeCompilerArgs.addAll("-Xjsr305=strict", "-progressive")
}
}
withType<Test>().configureEach {
jvmArgs("-XX:+UseParallelGC")
systemProperty("java.util.logging.config.file", "$rootDir/junit-logging.properties")
useJUnitPlatform()
reports {
junitXml.required = true
html.required = true
}
testLogging {
events = setOf(TestLogEvent.FAILED)
showExceptions = true
exceptionFormat = TestExceptionFormat.FULL
}
}
}
repositories {
mavenCentral()
}
dependencies {
implementation(Kotlin.stdlib)
testApi(platform(Testing.junit.bom))
testApi(Testing.junit.jupiter.api)
testApi(Testing.kotest.assertions.core)
testApi("com.tngtech.archunit:archunit-junit5:_")
testApi("com.lemonappdev:konsist:_")
testRuntimeOnly(Testing.junit.jupiter.engine)
testRuntimeOnly("org.junit.platform:junit-platform-launcher:_")
}