Skip to content

Commit bc26952

Browse files
committed
Fix: Configurate conflicts on Geyser-Fabric / Geyser-NeoForge
1 parent 80db983 commit bc26952

File tree

3 files changed

+21
-1
lines changed

3 files changed

+21
-1
lines changed

bootstrap/mod/fabric/build.gradle.kts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@ dependencies {
2525
shadowBundle(libs.raknet)
2626
shadowBundle(libs.mcprotocollib)
2727

28+
// Shade + relocate configurate as we're using a fork
29+
shadowBundle(libs.configurate.`interface`)
30+
shadowBundle(libs.configurate.yaml)
31+
shadowBundle(libs.configurate.core)
32+
2833
// Since we also relocate cloudburst protocol: shade erosion common
2934
shadowBundle(libs.erosion.common)
3035

@@ -43,6 +48,7 @@ tasks.withType<Jar> {
4348

4449
relocate("org.cloudburstmc.netty")
4550
relocate("org.cloudburstmc.protocol")
51+
relocate("org.spongepowered.configurate")
4652

4753
tasks {
4854
remapJar {
@@ -52,6 +58,10 @@ tasks {
5258
remapModrinthJar {
5359
archiveBaseName.set("geyser-fabric")
5460
}
61+
62+
shadowJar {
63+
mergeServiceFiles()
64+
}
5565
}
5666

5767
modrinth {

bootstrap/mod/neoforge/build.gradle.kts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,10 @@ dependencies {
3030
// Let's shade in our own api
3131
shadowBundle(projects.api)
3232

33-
// this one is particularly dumb
33+
// shade + relocate these to avoid conflicts
3434
shadowBundle(libs.configurate.`interface`)
35+
shadowBundle(libs.configurate.yaml)
36+
shadowBundle(libs.configurate.core)
3537

3638
// cannot be shaded, since neoforge will complain if floodgate-neoforge tries to provide this
3739
include(projects.common)
@@ -43,6 +45,8 @@ dependencies {
4345
include(libs.cloud.neoforge)
4446
}
4547

48+
relocate("org.spongepowered.configurate")
49+
4650
tasks.withType<Jar> {
4751
manifest.attributes["Main-Class"] = "org.geysermc.geyser.platform.neoforge.GeyserNeoForgeMain"
4852
}
@@ -55,6 +59,10 @@ tasks {
5559
remapModrinthJar {
5660
archiveBaseName.set("geyser-neoforge")
5761
}
62+
63+
shadowJar {
64+
mergeServiceFiles()
65+
}
5866
}
5967

6068
modrinth {

gradle/libs.versions.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ base-api = "1.0.2"
33
bstats = "3.1.0"
44
cumulus = "1.1.2"
55
configurate = "4.2.0-GeyserMC-20251111.004649-11"
6+
configurate-core = "4.2.0-GeyserMC-20251111.004649-12"
67
erosion = "1.1-20240521.000109-3"
78
events = "1.1-SNAPSHOT"
89
yaml = "2.2"
@@ -68,6 +69,7 @@ erosion-common = { group = "org.geysermc.erosion", name = "common", version.ref
6869

6970
yaml = { module = "org.yaml:snakeyaml", version.ref = "yaml" }
7071

72+
configurate-core = { module = "org.spongepowered:configurate-core", version.ref = "configurate-core" }
7173
configurate-interface-ap = { module = "org.spongepowered:configurate-extra-interface-ap", version.ref = "configurate" }
7274
configurate-interface = { module = "org.spongepowered:configurate-extra-interface", version.ref = "configurate" }
7375
configurate-yaml = { module = "org.spongepowered:configurate-yaml", version.ref = "configurate" }

0 commit comments

Comments
 (0)