1
0
mirror of https://github.com/GeyserMC/Geyser.git synced 2025-12-19 14:59:27 +00:00

Fix: Build issues for Geyser-Fabric and Geyser-NeoForge

resolves: https://github.com/GeyserMC/Geyser/issues/5718
how did this work until now? we'll never know
This commit is contained in:
onebeastchris
2025-07-26 01:13:25 +02:00
parent 461acb62a9
commit ca99ab7b1b
5 changed files with 32 additions and 35 deletions

View File

@@ -15,26 +15,24 @@ dependencies {
modApi(libs.fabric.api)
api(project(":mod", configuration = "namedElements"))
shadow(project(path = ":mod", configuration = "transformProductionFabric")) {
isTransitive = false
}
shadow(projects.core) { isTransitive = false }
shadowBundle(project(path = ":mod", configuration = "transformProductionFabric"))
shadowBundle(projects.core)
includeTransitive(projects.core)
// These are NOT transitively included, and instead shadowed + relocated.
// Avoids fabric complaining about non-SemVer versioning
shadow(libs.protocol.connection) { isTransitive = false }
shadow(libs.protocol.common) { isTransitive = false }
shadow(libs.protocol.codec) { isTransitive = false }
shadow(libs.raknet) { isTransitive = false }
shadow(libs.mcprotocollib) { isTransitive = false }
shadowBundle(libs.protocol.connection)
shadowBundle(libs.protocol.common)
shadowBundle(libs.protocol.codec)
shadowBundle(libs.raknet)
shadowBundle(libs.mcprotocollib)
// Since we also relocate cloudburst protocol: shade erosion common
shadow(libs.erosion.common) { isTransitive = false }
shadowBundle(libs.erosion.common)
// Let's shade in our own api/common module
shadow(projects.api) { isTransitive = false }
shadow(projects.common) { isTransitive = false }
shadowBundle(projects.api)
shadowBundle(projects.common)
modImplementation(libs.cloud.fabric)
include(libs.cloud.fabric)

View File

@@ -29,19 +29,17 @@ dependencies {
neoForge(libs.neoforge.minecraft)
api(project(":mod", configuration = "namedElements"))
shadow(project(path = ":mod", configuration = "transformProductionNeoForge")) {
isTransitive = false
}
shadow(projects.core) { isTransitive = false }
shadowBundle(project(path = ":mod", configuration = "transformProductionNeoForge"))
shadowBundle(projects.core)
// Minecraft (1.21.2+) includes jackson. But an old version!
shadow(libs.jackson.core) { isTransitive = false }
shadow(libs.jackson.databind) { isTransitive = false }
shadow(libs.jackson.dataformat.yaml) { isTransitive = false }
shadow(libs.jackson.annotations) { isTransitive = false }
shadowBundle(libs.jackson.core)
shadowBundle(libs.jackson.databind)
shadowBundle(libs.jackson.dataformat.yaml)
shadowBundle(libs.jackson.annotations)
// Let's shade in our own api
shadow(projects.api) { isTransitive = false }
shadowBundle(projects.api)
// cannot be shaded, since neoforge will complain if floodgate-neoforge tries to provide this
include(projects.common)

View File

@@ -34,7 +34,7 @@ tasks.withType<com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar> {
exclude(dependency("io.netty:.*"))
exclude(dependency("org.slf4j:.*"))
exclude(dependency("org.ow2.asm:.*"))
// Exclude all Kyori dependencies except the legacy NBT serializer
// Exclude all Kyori dependencies
exclude(dependency("net.kyori:.*:.*"))
}
}