mcMMO/bukkit/build.gradle.kts
Gabriel Harris-Rouquette 196ace4b81
Split up dependencies for multiple version support.
The "core" module will house the entire abstraction layer of mcMMO, while
the "bukkit" and "sponge" modules will house common code to share between
the various versions being supported for each platform. Specifically,
spigot will be split up based on the listener handlers being registered,
and will be shadow packaged according to their targeted Minecraft version.
Sponge's multi-version dependency will be based on the API version, since
the only constant known between the various API versions is the plugin
annotations and basic listener annotations.

Signed-off-by: Gabriel Harris-Rouquette <gabizou@me.com>
2019-02-07 19:58:53 -08:00

35 lines
1.1 KiB
Plaintext

buildscript {
repositories { jcenter() }
dependencies { classpath("com.github.jengelman.gradle.plugins:shadow:4.0.4") }
}
val bukkit: Project by rootProject.extra
val core: Project by rootProject.extra
// This configures the bukkit/spigot ecosystem repositories, so they all share the same repos
allprojects {
repositories {
// Spigot & Bukkit
maven("https://hub.spigotmc.org/nexus/content/repositories/snapshots/")
maven("https://oss.sonatype.org/content/repositories/snapshots")
mavenLocal() // For nms variants
}
dependencies {
compile(core) // includes junit for tests
compile("org.bstats", "bstats-bukkit", "1.4") // Bukkit bstats
}
}
subprojects {
dependencies {
// Provide the base bukkit plugin dependency for plugin classloading.
// All "versioned" implementations will be properly classloaded by the bukkit parent
(compile(bukkit) as ModuleDependency).apply { exclude("org.spigotmc") }
}
}
plugins {
java
}
dependencies {
implementation("org.spigotmc:spigot-api:1.13.2-R0.1-SNAPSHOT") // Spigot API
}