aboutsummaryrefslogtreecommitdiff
path: root/build-logic/src/main/kotlin/dokkabuild.java.gradle.kts
diff options
context:
space:
mode:
Diffstat (limited to 'build-logic/src/main/kotlin/dokkabuild.java.gradle.kts')
-rw-r--r--build-logic/src/main/kotlin/dokkabuild.java.gradle.kts40
1 files changed, 40 insertions, 0 deletions
diff --git a/build-logic/src/main/kotlin/dokkabuild.java.gradle.kts b/build-logic/src/main/kotlin/dokkabuild.java.gradle.kts
new file mode 100644
index 00000000..16cb7ebc
--- /dev/null
+++ b/build-logic/src/main/kotlin/dokkabuild.java.gradle.kts
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
+/**
+ * Base configuration for Java/JVM projects.
+ */
+
+plugins {
+ id("dokkabuild.base")
+ java
+}
+
+java {
+ toolchain {
+ languageVersion.set(dokkaBuild.mainJavaVersion)
+ }
+}
+
+tasks.withType<Test>().configureEach {
+ useJUnitPlatform()
+
+ maxParallelForks = if (System.getenv("GITHUB_ACTIONS") != null) {
+ Runtime.getRuntime().availableProcessors()
+ } else {
+ (Runtime.getRuntime().availableProcessors() / 2).takeIf { it > 0 } ?: 1
+ }
+
+ javaLauncher.set(javaToolchains.launcherFor {
+ languageVersion.set(dokkaBuild.testJavaLauncherVersion)
+ })
+}
+
+dependencies {
+ testImplementation(platform(libs.junit.bom))
+}
+
+tasks.processResources {
+ duplicatesStrategy = DuplicatesStrategy.FAIL
+}