This repository has been archived on 2024-07-29. You can view files and clone it, but cannot push or open issues or pull requests.
Plugin/build.gradle

102 lines
2.6 KiB
Groovy

plugins {
id 'java'
id 'com.github.johnrengelman.shadow' version '8.1.1'
}
group = 'me.theclashfruit'
version = project.plugin_version
repositories {
mavenCentral()
maven {
name = "Spigot"
url = "https://hub.spigotmc.org/nexus/content/repositories/snapshots/"
}
maven {
name = "Sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
maven {
name "Minecraft Libraries"
url "https://libraries.minecraft.net/"
}
}
dependencies {
compileOnly("org.spigotmc:spigot-api:${project.bukkit_version}")
compileOnly("com.mojang:authlib:1.5.21")
implementation 'org.eclipse.jetty:jetty-server:12.0.8'
implementation 'org.eclipse.jetty.ee10:jetty-ee10-servlet:12.0.8'
implementation 'org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jetty-server:12.0.8'
implementation 'com.google.code.gson:gson:2.10.1'
implementation 'org.mariadb.jdbc:mariadb-java-client:3.4.0'
}
processResources {
inputs.property "version", project.version
inputs.property "bukkit_version", project.bukkit_version
filteringCharset "UTF-8"
filesMatching("plugin.yml") {
expand "version": project.version,
"bukkit_version": project.bukkit_version
}
}
tasks.register("launchMinecraftServer", JavaExec) {
group('minecraft')
dependsOn("build")
classpath = sourceSets.main.runtimeClasspath
main = "me.theclashfruit.devrunner.DevRunner"
doFirst {
copy {
from(layout.buildDirectory.file("libs/${project.name}-${project.version}.jar"))
into(layout.projectDirectory.file("run/plugins"))
}
copy {
from(configurations.runtimeClasspath)
into(layout.projectDirectory.file("run"))
include "spigot*"
// rename("spigot-${project.bukkit_version}.jar", "server.jar")
}
}
}
shadowJar {
// exclude devrunner from jar
exclude('me/theclashfruit/devrunner')
// relocate stuff
relocate('com.google.gson', 'me.theclashfruit.deps.gson')
relocate('org.eclipse.jetty', 'me.theclashfruit.deps.jetty')
relocate('jakarta', 'me.theclashfruit.deps.jakarta')
relocate('org.slf4j', 'me.theclashfruit.deps.slf4j')
relocate('org.objectweb.asm', 'me.theclashfruit.deps.asm')
// relocate('org.mariadb', 'me.theclashfruit.deps.mariadb')
archiveBaseName.set(rootProject.name)
archiveClassifier.set('')
archiveVersion.set(project.version)
}
tasks.jar.enabled = false
tasks.build {
dependsOn tasks.processResources
dependsOn tasks.shadowJar
}
test {
useJUnitPlatform()
}