diff --git a/buildSrc/src/main/kotlin/LibsConfig.kt b/buildSrc/src/main/kotlin/LibsConfig.kt index f88fafae0..c494137ac 100644 --- a/buildSrc/src/main/kotlin/LibsConfig.kt +++ b/buildSrc/src/main/kotlin/LibsConfig.kt @@ -1,11 +1,13 @@ import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar import org.gradle.api.Project +import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.internal.HasConvention import org.gradle.api.plugins.MavenRepositoryHandlerConvention import org.gradle.api.tasks.Upload import org.gradle.api.tasks.bundling.Jar import org.gradle.kotlin.dsl.apply +import org.gradle.kotlin.dsl.dependencies import org.gradle.kotlin.dsl.get import org.gradle.kotlin.dsl.getPlugin import org.gradle.kotlin.dsl.invoke @@ -106,3 +108,16 @@ applyCommonArtifactoryConfig() } + +fun Project.constrainDependenciesToLibsCore() { + evaluationDependsOn(":worldedit-libs:core") + val coreDeps = project(":worldedit-libs:core").configurations["shade"].dependencies + .filterIsInstance() + dependencies.constraints { + for (coreDep in coreDeps) { + add("shade", "${coreDep.group}:${coreDep.name}:${coreDep.version}") { + because("libs should align with libs:core") + } + } + } +} diff --git a/worldedit-libs/bukkit/build.gradle.kts b/worldedit-libs/bukkit/build.gradle.kts index 79734ff82..a9d1c255e 100644 --- a/worldedit-libs/bukkit/build.gradle.kts +++ b/worldedit-libs/bukkit/build.gradle.kts @@ -1,4 +1,5 @@ applyLibrariesConfiguration() +constrainDependenciesToLibsCore() repositories { maven { @@ -6,6 +7,7 @@ url = uri("https://hub.spigotmc.org/nexus/content/repositories/snapshots/") } } + dependencies { "shade"("net.kyori:text-adapter-bukkit:${Versions.TEXT_EXTRAS}") -} \ No newline at end of file +} diff --git a/worldedit-libs/sponge/build.gradle.kts b/worldedit-libs/sponge/build.gradle.kts index 5854dd616..47bd7e59c 100644 --- a/worldedit-libs/sponge/build.gradle.kts +++ b/worldedit-libs/sponge/build.gradle.kts @@ -1,4 +1,5 @@ applyLibrariesConfiguration() +constrainDependenciesToLibsCore() repositories { maven { @@ -8,4 +9,4 @@ } dependencies { "shade"("net.kyori:text-adapter-spongeapi:${Versions.TEXT_EXTRAS}") -} \ No newline at end of file +}