minecraft-server-gradle-plugin
minecraft-server-gradle-plugin copied to clipboard
Launch Minecraft servers using Gradle task. For Bukkit, Spigot, Paper, etc..
minecraft-server-gradle-plugin
Launch Minecraft servers using Gradle task. For Bukkit, Spigot, Paper, etc..
Installation
build.gradle
plugins {
id 'dev.s7a.gradle.minecraft.server' version '3.1.0'
}
build.gradle.kts
plugins {
id("dev.s7a.gradle.minecraft.server") version "3.1.0"
}
Options
Name | Default | Description |
---|---|---|
jarUrl | Required️ | URL to Download the .jar |
jarName | server.jar |
Jar File Name After Download |
serverDirectory | build/MinecraftServer |
Working Directory |
jvmArgument | [] |
Java Options |
serverArgument | [] |
Server Options |
nogui | true |
Without Vanilla GUI |
agreeEula | false |
Agree to the Minecraft EULA |
Example
[!WARNING] This plugin doesn't have a default task. So you have to define it yourself.
Simple usage
build.gradle.kts
task<LaunchMinecraftServerTask>("launchMinecraftServer") {
jarUrl.set(JarUrl.Paper("1.19.2"))
agreeEula.set(true)
}
For testing a plugin
build.gradle.kts
task<LaunchMinecraftServerTask>("testPlugin") {
dependsOn("build")
doFirst {
copy {
from(buildDir.resolve("libs/${project.name}.jar"))
into(buildDir.resolve("MinecraftServer/plugins"))
}
}
jarUrl.set(JarUrl.Paper("1.19.2"))
agreeEula.set(true)
}
For testing a multi-version supporting plugin
build.gradle.kts
listOf(
"8" to "1.8.8",
"9" to "1.9.4",
"10" to "1.10.2",
"11" to "1.11.2",
"12" to "1.12.2",
"13" to "1.13.2",
"14" to "1.14.4",
"15" to "1.15.2",
"16" to "1.16.5",
"17" to "1.17.1",
"18" to "1.18.2",
"19" to "1.19.4",
"20" to "1.20.4"
).forEach { (name, version) ->
task<LaunchMinecraftServerTask>("testPlugin$name") {
dependsOn("build")
doFirst {
copy {
from(buildDir.resolve("libs/${project.name}.jar"))
into(buildDir.resolve("MinecraftServer$name/plugins"))
}
}
serverDirectory.set(buildDir.resolve("MinecraftServer$name").absolutePath)
jarUrl.set(JarUrl.Paper(version))
agreeEula.set(true)
}
}
Supported JarUrl
- Paper
- Velocity
- Waterfall
- Fabric
- Mohist
- LocalFile