-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathbuild.gradle.kts
More file actions
107 lines (94 loc) · 3.46 KB
/
build.gradle.kts
File metadata and controls
107 lines (94 loc) · 3.46 KB
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
106
107
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
plugins {
id("java")
id("java-library")
kotlin("jvm")
`no-build-dir`
`maven-publish`
id("com.gradleup.shadow")
id("com.github.gmazzo.buildconfig") version "6.0.6"
}
allprojects {
group = "io.github.rothes.esu"
project.version = rootProject.property("versionName").toString()
repositories {
mavenLocal()
mavenCentral()
}
}
subprojects {
apply(plugin = "java")
apply(plugin = "java-library")
apply(plugin = "kotlin")
apply(plugin = "maven-publish")
apply(plugin = "com.gradleup.shadow")
val javaVer = JavaVersion.VERSION_11
java {
disableAutoTargetJvm()
sourceCompatibility = javaVer
targetCompatibility = javaVer
withSourcesJar()
withJavadocJar()
}
tasks.compileJava {
options.encoding = "UTF-8"
sourceCompatibility = javaVer.toString()
targetCompatibility = javaVer.toString()
}
tasks.shadowJar {
dependencies {
exclude(dependency("org.jetbrains.kotlin:kotlin-stdlib"))
exclude(dependency("org.jetbrains.kotlin:kotlin-reflect"))
exclude(dependency("org.jetbrains:annotations"))
}
}
kotlin {
compilerOptions {
jvmTarget.value(JvmTarget.fromTarget(javaVer.toString()))
// Remove Intrinsics checks
freeCompilerArgs.add("-Xno-call-assertions")
freeCompilerArgs.add("-Xno-receiver-assertions")
freeCompilerArgs.add("-Xno-param-assertions")
}
}
tasks.javadoc {
options.encoding = "UTF-8"
}
if (project.parent == rootProject) {
publishing {
repositories {
mavenLocal()
}
publications {
create<MavenPublication>("mavenJar") {
from(components["java"])
artifactId = project.name
groupId = project.group as String?
version = project.version as String?
}
}
}
apply(plugin = "com.github.gmazzo.buildconfig")
buildConfig {
when (project.name) {
"common", "module" -> {}
"core" -> {
buildConfigField("DEP_VERSION_KOTLIN", rootProject.libs.versions.kotlin)
buildConfigField("DEP_VERSION_KOTLINX_IO_CORE", rootProject.libs.versions.kotlinx.io.core)
}
else -> {
apply(plugin = "publish-modrinth")
buildConfigField("VERSION_NAME", provider { finalVersionName })
buildConfigField("VERSION_CHANNEL", project.property("versionChannel").toString())
buildConfigField("VERSION_ID", project.property("versionId").toString())
buildConfigField("DEP_VERSION_ADVENTURE", rootProject.libs.versions.adventure)
buildConfigField("DEP_VERSION_EXPOSED", rootProject.libs.versions.exposed)
buildConfigField("DEP_VERSION_H2DATABASE", rootProject.libs.versions.h2database)
buildConfigField("DEP_VERSION_HIKARICP", rootProject.libs.versions.hikariCP)
buildConfigField("DEP_VERSION_MARIADB_CLIENT", rootProject.libs.versions.mariadb.client)
buildConfigField("DEP_VERSION_PACKETEVENTS", rootProject.libs.versions.packetevents)
}
}
}
}
}