forked from ingokegel/jclasslib
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle.kts
105 lines (87 loc) · 2.46 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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
import org.gradle.plugins.ide.idea.model.IdeaModel
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompile
plugins {
kotlin("jvm") apply false
id("org.jetbrains.dokka") version "1.6.0" apply false
idea
}
version = "6.0.3"
buildDir = file("build/gradle")
val kotlinVersion: String by project
subprojects {
buildDir = File(rootProject.buildDir, path.substring(1).replace(':', '/'))
group = "org.jclasslib"
version = rootProject.version
repositories {
flatDir {
dirs = setOf(file("lib"), file("$rootDir/lib-compile"))
}
maven("https://maven.ej-technologies.com/repository") {
content {
includeGroup("com.install4j")
}
}
maven("https://jitpack.io") {
content {
includeGroup("com.github.ingokegel")
}
}
maven("https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven") {
content {
includeGroup("org.jetbrains.kotlinx")
}
}
mavenCentral()
}
pluginManager.withPlugin("kotlin") {
configure<JavaPluginExtension> {
toolchain {
languageVersion.set(JavaLanguageVersion.of(11))
}
}
dependencies {
add("testImplementation", "org.testng:testng:6.8.8")
}
tasks.withType<Test>().configureEach {
useTestNG()
}
tasks.withType<KotlinJvmCompile>().configureEach {
kotlinOptions {
languageVersion = "1.5"
apiVersion = "1.5"
}
}
configure<JavaPluginExtension> {
toolchain {
languageVersion.set(JavaLanguageVersion.of(11))
}
}
}
apply(plugin = "idea")
configure<IdeaModel> {
module {
inheritOutputDirs = true
isDownloadJavadoc = true
isDownloadSources = true
}
}
}
tasks {
getByName<Wrapper>("wrapper") {
gradleVersion = "7.3"
distributionType = Wrapper.DistributionType.ALL
}
register("dist") {
dependsOn(":data:dist", ":browser:dist", ":agent:dist")
}
register<Delete>("clean") {
dependsOn(":installer:clean", ":data:clean", ":browser:clean", ":agent:clean")
delete(externalLibsDir)
}
}
idea {
module {
name = "root"
excludeDirs = files("build", "dist", "media").files + excludeDirs
}
}