Skip to content

Commit f3dec43

Browse files
committed
[REFACTOR] Gradle scripts
1 parent 7eb6888 commit f3dec43

18 files changed

Lines changed: 110 additions & 161 deletions

File tree

build.gradle.kts

Lines changed: 4 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,13 @@
1-
// Fix for fabric
2-
// Can not set final java.util.Map field net.fabricmc.loom.configuration.providers.minecraft.VersionsManifest.latest
3-
buildscript {
4-
dependencies {
5-
classpath(libs.gson)
6-
}
7-
}
81

92
plugins {
10-
java
11-
`maven-publish`
12-
`java-library`
13-
alias(libs.plugins.kotlin.jvm) apply false
14-
alias(libs.plugins.kotlin.serialization) apply false
153
alias(libs.plugins.gradle.buildconfig) apply false
16-
17-
// klibs - core
4+
alias(libs.plugins.gradle.forgegradle) apply false
5+
alias(libs.plugins.gradle.neoforgegradle) apply false
186
alias(libs.plugins.klibs.gradle.detekt) apply false
197
alias(libs.plugins.klibs.gradle.java.version) apply false
208
alias(libs.plugins.klibs.gradle.publication) apply false
219
alias(libs.plugins.klibs.gradle.rootinfo) apply false
2210
alias(libs.plugins.klibs.minecraft.resource.processor) apply false
23-
alias(libs.plugins.gradle.neoforgegradle) apply false
24-
alias(libs.plugins.gradle.forgegradle) apply false
25-
}
26-
27-
apply(plugin = "ru.astrainteractive.gradleplugin.detekt")
28-
apply(plugin = "ru.astrainteractive.gradleplugin.rootinfo")
29-
30-
subprojects.forEach {
31-
it.plugins.withId("org.jetbrains.kotlin.jvm") {
32-
it.apply(plugin = "ru.astrainteractive.gradleplugin.java.version")
33-
}
11+
alias(libs.plugins.kotlin.jvm) apply false
12+
alias(libs.plugins.kotlin.serialization) apply false
3413
}

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ klibs.java.ktarget=21
1313
# Project
1414
klibs.project.name=MessageBridge
1515
klibs.project.group=ru.astrainteractive.messagebridge
16-
klibs.project.version.string=0.21.4
16+
klibs.project.version.string=0.21.5
1717
klibs.project.description=Bridge for TG and Discord
1818
klibs.project.developers=makeevrserg|Makeev Roman|makeevrserg@gmail.com
1919
klibs.project.url=https://empireprojekt.ru

gradle/libs.versions.toml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jda = "6.4.1"
1515
jda-webhook = "0.8.4"
1616
jmh-core = "1.37"
1717
joml = "1.10.8"
18-
klibs-gradleplugin = "2.0.3"
18+
klibs-gradleplugin = "2.1.1"
1919
klibs-kdi = "1.4.8"
2020
klibs-kstorage = "5.0.4"
2121
klibs-mikro = "1.23.0"
@@ -27,8 +27,9 @@ kotlin-serialization = "1.11.0"
2727
kotlin-serialization-kaml = "0.104.0"
2828
kotlin-version = "2.2.0"
2929
ktor = "3.4.3"
30-
minecraft-astralibs = "3.40.0"
30+
minecraft-astralibs = "3.40.4"
3131
minecraft-brigadier = "1.3.10"
32+
minecraft-authlib = "6.0.54"
3233
minecraft-bstats = "3.2.1"
3334
minecraft-bungee = "26.1-R0.1-SNAPSHOT"
3435
minecraft-datafixerupper = "8.0.16"
@@ -111,6 +112,7 @@ minecraft-astralibs-exposed = { module = "ru.astrainteractive.astralibs:exposed"
111112
minecraft-astralibs-menu-bukkit = { module = "ru.astrainteractive.astralibs:menu-bukkit", version.ref = "minecraft-astralibs" }
112113
minecraft-astralibs-orm = { module = "ru.astrainteractive.astralibs:orm", version.ref = "minecraft-astralibs" }
113114
minecraft-brigadier = { module = "com.mojang:brigadier", version.ref = "minecraft-brigadier" }
115+
minecraft-authlib = { module = "com.mojang:authlib", version.ref = "minecraft-authlib" }
114116
minecraft-bstats = { module = "org.bstats:bstats-bukkit", version.ref = "minecraft-bstats" }
115117
minecraft-bungee = { module = "net.md-5:bungeecord-api", version.ref = "minecraft-bungee" }
116118
minecraft-datafixerupper = { module = "com.mojang:datafixerupper", version.ref = "minecraft-datafixerupper" }
@@ -161,6 +163,7 @@ gradle-forgerenamer = { id = "net.minecraftforge.renamer", version.ref = "minecr
161163
gradle-ftp = { id = "ru.astrainteractive.ftpplugin.gradleftp", version.ref = "gradle-ftp" }
162164
gradle-neoforgegradle = { id = "net.neoforged.gradle.userdev", version.ref = "minecraft-neoforgegradle" }
163165
gradle-shadow = { id = "com.gradleup.shadow", version.ref = "gradle-shadow" }
166+
klibs-gradle-minecraft-platform = { id = "ru.astrainteractive.gradleplugin.minecraft.platform", version.ref = "klibs-gradleplugin" }
164167
klibs-gradle-detekt = { id = "ru.astrainteractive.gradleplugin.detekt", version.ref = "klibs-gradleplugin" }
165168
klibs-gradle-detekt-compose = { id = "ru.astrainteractive.gradleplugin.detekt.compose", version.ref = "klibs-gradleplugin" }
166169
klibs-gradle-dokka-root = { id = "ru.astrainteractive.gradleplugin.dokka.root", version.ref = "klibs-gradleplugin" }

instances/bukkit/build.gradle.kts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@ import org.gradle.kotlin.dsl.named
33
import ru.astrainteractive.gradleplugin.property.util.requireProjectInfo
44

55
plugins {
6-
kotlin("jvm")
7-
kotlin("plugin.serialization")
6+
id("org.jetbrains.kotlin.jvm")
7+
id("org.jetbrains.kotlin.plugin.serialization")
8+
id("ru.astrainteractive.gradleplugin.detekt")
9+
id("ru.astrainteractive.gradleplugin.java.version")
810
alias(libs.plugins.klibs.minecraft.resource.processor)
911
alias(libs.plugins.gradle.shadow)
1012
}
@@ -64,7 +66,7 @@ val shadowJar by tasks.getting(ShadowJar::class) {
6466
destinationDirectory = rootProject.layout.buildDirectory.get()
6567
.asFile
6668
.resolve(project.name)
67-
.resolve("mods")
69+
.resolve("plugins")
6870
.takeIf(File::exists)
6971
?: rootDir.resolve("jars")
7072
dependencies {
@@ -207,11 +209,11 @@ val shadowJar by tasks.getting(ShadowJar::class) {
207209

208210
add("org.intellij")
209211
add("org.jetbrains.annotations")
210-
add("org.jetbrains.exposed") // Don't relocate on: [*]
212+
// add("org.jetbrains.exposed") // Don't relocate on: [*]
211213
add("org.jetbrains.kotlinx")
212214
add("org.json")
213215
add("org.json")
214-
add("org.sqlite")
216+
// add("org.sqlite") // Don't relocate on: [*]
215217
add("org.telegram")
216218
add("org.telegram.telegrambots")
217219
add("org.w3c.css")

instances/forge/build.gradle.kts

Lines changed: 27 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
2-
import ru.astrainteractive.gradleplugin.property.model.Developer
3-
import ru.astrainteractive.gradleplugin.property.util.requireJinfo
42
import ru.astrainteractive.gradleplugin.property.util.requireProjectInfo
53

64
plugins {
7-
kotlin("jvm")
8-
kotlin("plugin.serialization")
5+
id("org.jetbrains.kotlin.jvm")
6+
id("org.jetbrains.kotlin.plugin.serialization")
7+
id("ru.astrainteractive.gradleplugin.detekt")
8+
id("ru.astrainteractive.gradleplugin.java.version")
99
alias(libs.plugins.gradle.forgegradle)
1010
alias(libs.plugins.gradle.forgerenamer)
1111
alias(libs.plugins.gradle.shadow)
12+
alias(libs.plugins.klibs.minecraft.resource.processor)
1213
}
1314

1415
repositories {
@@ -20,61 +21,38 @@ repositories {
2021
}
2122

2223
dependencies {
23-
// Kotlin
24+
compileOnly(libs.minecraft.luckperms)
25+
26+
shadow(libs.driver.h2)
27+
shadow(libs.exposed.jdbc)
28+
shadow(libs.klibs.kstorage)
29+
shadow(libs.klibs.mikro.core)
30+
shadow(libs.klibs.mikro.extensions)
2431
shadow(libs.kotlin.coroutines.core)
2532
shadow(libs.kotlin.datetime)
2633
shadow(libs.kotlin.serialization.kaml)
27-
// AstraLibs
28-
shadow(libs.minecraft.astralibs.core)
2934
shadow(libs.minecraft.astralibs.command)
35+
shadow(libs.minecraft.astralibs.core)
3036
shadow(libs.minecraft.astralibs.core.forge)
31-
32-
shadow(libs.klibs.mikro.core)
33-
shadow(libs.klibs.mikro.extensions)
34-
shadow(libs.klibs.kstorage)
35-
36-
shadow(libs.driver.h2)
37-
shadow(libs.exposed.jdbc)
38-
39-
shadow(libs.minecraft.kyori.plain)
40-
shadow(libs.minecraft.kyori.legacy)
4137
shadow(libs.minecraft.kyori.gson)
42-
// Spigot
43-
compileOnly(libs.minecraft.luckperms)
44-
// Local
38+
shadow(libs.minecraft.kyori.legacy)
39+
shadow(libs.minecraft.kyori.plain)
40+
shadow(projects.modules.core.api)
41+
shadow(projects.modules.core.forge)
42+
shadow(projects.modules.link)
4543
shadow(projects.modules.messenger.api)
4644
shadow(projects.modules.messenger.discord)
4745
shadow(projects.modules.messenger.forge)
4846
shadow(projects.modules.messenger.telegram)
49-
shadow(projects.modules.core.api)
50-
shadow(projects.modules.core.forge)
51-
shadow(projects.modules.link)
5247
}
5348

54-
tasks.named<ProcessResources>("processResources") {
55-
filteringCharset = "UTF-8"
56-
duplicatesStrategy = DuplicatesStrategy.WARN
57-
val sourceSets = project.extensions.getByName("sourceSets") as SourceSetContainer
58-
val resDirs = sourceSets
59-
.map(SourceSet::getResources)
60-
.map(SourceDirectorySet::getSrcDirs)
61-
from(resDirs) {
62-
include("META-INF/mods.toml")
63-
expand(
64-
mapOf(
65-
"minecraft_version" to libs.versions.minecraft.forgeversion.get().split("-")[0],
66-
"forge_version" to libs.versions.minecraft.forgeversion.get().split("-")[1],
67-
"mod_id" to requireProjectInfo.name.lowercase(),
68-
"mod_name" to requireProjectInfo.name,
69-
"mod_license" to "mod_license",
70-
"mod_version" to requireProjectInfo.versionString,
71-
"mod_authors" to requireProjectInfo.developersList
72-
.map(Developer::id)
73-
.joinToString(","),
74-
"mod_description" to requireProjectInfo.description
75-
)
49+
minecraftProcessResource {
50+
forge(
51+
customProperties = mapOf(
52+
"minecraft_version" to libs.versions.minecraft.forgeversion.get().split("-")[0],
53+
"forge_version" to libs.versions.minecraft.forgeversion.get().split("-")[1],
7654
)
77-
}
55+
)
7856
}
7957

8058
val shadowJar by tasks.getting(ShadowJar::class) {
@@ -229,14 +207,13 @@ val shadowJar by tasks.getting(ShadowJar::class) {
229207
// Don't relocate on: [bukkit]
230208
add("org.h2")
231209
}
232-
233210
add("org.intellij")
234211
add("org.jetbrains.annotations")
235-
add("org.jetbrains.exposed") // Don't relocate on: [*]
212+
// add("org.jetbrains.exposed") // Don't relocate on: [*]
236213
add("org.jetbrains.kotlinx")
237214
add("org.json")
238215
add("org.json")
239-
add("org.sqlite")
216+
// add("org.sqlite")
240217
add("org.telegram")
241218
add("org.telegram.telegrambots")
242219
add("org.w3c.css")
@@ -247,21 +224,15 @@ val shadowJar by tasks.getting(ShadowJar::class) {
247224
}.forEach { pattern -> relocate(pattern, "${requireProjectInfo.group}.shade.$pattern") }
248225
}
249226

250-
java.toolchain.languageVersion = JavaLanguageVersion.of(requireJinfo.jtarget.majorVersion)
251-
252227
minecraft {
253-
mappings("official", "1.20.1")
228+
mappings("official", libs.versions.minecraft.mojang.version.get())
254229
useDefaultAccessTransformer()
255230
}
256231

257232
dependencies {
258233
compileOnly(minecraft.dependency(libs.minecraft.forgeversion.get()))
259234
}
260235

261-
configurations.runtimeElements {
262-
setExtendsFrom(emptySet())
263-
}
264-
265236
renamer {
266237
mappings.from(minecraft.dependency.toSrgFile)
267238
}

instances/neoforge/build.gradle.kts

Lines changed: 15 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,21 @@
11
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
2-
import ru.astrainteractive.gradleplugin.property.model.Developer
3-
import ru.astrainteractive.gradleplugin.property.util.requireJinfo
42
import ru.astrainteractive.gradleplugin.property.util.requireProjectInfo
53

64
plugins {
7-
kotlin("jvm")
8-
kotlin("plugin.serialization")
5+
id("org.jetbrains.kotlin.jvm")
6+
id("org.jetbrains.kotlin.plugin.serialization")
7+
id("ru.astrainteractive.gradleplugin.detekt")
8+
id("ru.astrainteractive.gradleplugin.java.version")
99
alias(libs.plugins.gradle.neoforgegradle)
1010
alias(libs.plugins.gradle.shadow)
11+
alias(libs.plugins.klibs.minecraft.resource.processor)
1112
}
1213

1314
repositories {
1415
mavenCentral()
1516
mavenLocal()
1617
}
18+
1719
dependencies {
1820
compileOnly(libs.minecraft.luckperms)
1921

@@ -31,7 +33,6 @@ dependencies {
3133
shadow(libs.minecraft.kyori.gson)
3234
shadow(libs.minecraft.kyori.legacy)
3335
shadow(libs.minecraft.kyori.plain)
34-
3536
shadow(projects.modules.core.api)
3637
shadow(projects.modules.core.neoforge)
3738
shadow(projects.modules.link)
@@ -41,33 +42,16 @@ dependencies {
4142
shadow(projects.modules.messenger.telegram)
4243
}
4344

44-
tasks.named<ProcessResources>("processResources") {
45-
filteringCharset = "UTF-8"
46-
duplicatesStrategy = DuplicatesStrategy.WARN
47-
val sourceSets = project.extensions.getByName("sourceSets") as SourceSetContainer
48-
val resDirs = sourceSets
49-
.map(SourceSet::getResources)
50-
.map(SourceDirectorySet::getSrcDirs)
51-
from(resDirs) {
52-
include("META-INF/neoforge.mods.toml")
53-
expand(
54-
mapOf(
55-
"minecraft_version" to libs.versions.minecraft.mojang.version.get(),
56-
"minecraft_version_range" to listOf(libs.versions.minecraft.mojang.version.get())
57-
.joinToString(","),
58-
"neo_version" to "neo_version",
59-
"neo_version_range" to "[${libs.versions.minecraft.neoforgeversion.get()},)",
60-
"mod_id" to requireProjectInfo.name.lowercase(),
61-
"mod_name" to requireProjectInfo.name,
62-
"mod_license" to "mod_license",
63-
"mod_version" to requireProjectInfo.versionString,
64-
"mod_authors" to requireProjectInfo.developersList
65-
.map(Developer::id)
66-
.joinToString(","),
67-
"mod_description" to requireProjectInfo.description
68-
)
45+
minecraftProcessResource {
46+
neoForge(
47+
customProperties = mapOf(
48+
"minecraft_version" to libs.versions.minecraft.mojang.version.get(),
49+
"minecraft_version_range" to listOf(libs.versions.minecraft.mojang.version.get())
50+
.joinToString(","),
51+
"neo_version" to "neo_version",
52+
"neo_version_range" to "[${libs.versions.minecraft.neoforgeversion.get()},)",
6953
)
70-
}
54+
)
7155
}
7256

7357
val shadowJar by tasks.getting(ShadowJar::class) {
@@ -192,12 +176,6 @@ val shadowJar by tasks.getting(ShadowJar::class) {
192176
).forEach { pattern -> relocate(pattern, "${requireProjectInfo.group}.shade.$pattern") }
193177
}
194178

195-
java.toolchain.languageVersion = JavaLanguageVersion.of(requireJinfo.jtarget.majorVersion)
196-
197179
dependencies {
198180
compileOnly(libs.minecraft.neoforgeversion)
199181
}
200-
201-
configurations.runtimeElements {
202-
setExtendsFrom(emptySet())
203-
}

modules/command/build.gradle.kts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
plugins {
2-
kotlin("jvm")
3-
kotlin("plugin.serialization")
2+
id("org.jetbrains.kotlin.jvm")
3+
id("org.jetbrains.kotlin.plugin.serialization")
4+
id("ru.astrainteractive.gradleplugin.detekt")
5+
id("ru.astrainteractive.gradleplugin.java.version")
46
}
57

68
dependencies {

modules/core/api/build.gradle.kts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
plugins {
2-
kotlin("jvm")
3-
kotlin("plugin.serialization")
2+
id("org.jetbrains.kotlin.jvm")
3+
id("org.jetbrains.kotlin.plugin.serialization")
4+
id("ru.astrainteractive.gradleplugin.detekt")
5+
id("ru.astrainteractive.gradleplugin.java.version")
46
}
57

68
dependencies {

modules/core/bukkit/build.gradle.kts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
plugins {
2-
kotlin("jvm")
3-
kotlin("plugin.serialization")
2+
id("org.jetbrains.kotlin.jvm")
3+
id("org.jetbrains.kotlin.plugin.serialization")
4+
id("ru.astrainteractive.gradleplugin.detekt")
5+
id("ru.astrainteractive.gradleplugin.java.version")
46
}
57

68
dependencies {

0 commit comments

Comments
 (0)