mirror of
https://github.com/TotalFreedomMC/TotalFreedomMod.git
synced 2024-09-26 19:35:09 +00:00
215 lines
6.1 KiB
Groovy
215 lines
6.1 KiB
Groovy
plugins {
|
|
id 'java'
|
|
id 'maven-publish'
|
|
id 'idea'
|
|
id 'checkstyle'
|
|
id 'com.github.johnrengelman.shadow' version '7.0.0'
|
|
id 'net.minecrell.plugin-yml.bukkit' version '0.5.0'
|
|
}
|
|
|
|
repositories {
|
|
mavenLocal()
|
|
gradlePluginPortal()
|
|
|
|
maven {
|
|
url = uri('https://jitpack.io')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://repo.codemc.org/repository/maven-public/')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://repo.codemc.org/repository/nms/')
|
|
content {
|
|
includeGroup('org.spigotmc')
|
|
includeGroup('net.ess3')
|
|
}
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://hub.spigotmc.org/nexus/content/groups/public/')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://maven.enginehub.org/repo/')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://maven.elmakers.com/repository/')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://m2.dv8tion.net/releases/')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://maven.playpro.com/')
|
|
content {
|
|
includeGroup('net.coreprotect')
|
|
}
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://repo.md-5.net/content/groups/public/')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://repo.dmulloy2.net/nexus/repository/public/')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://papermc.io/repo/repository/maven-public/')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://ci.ender.zone/plugin/repository/everything/')
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://nexus.telesphoreo.me/repository/totalfreedom/')
|
|
content {
|
|
includeGroup('me.totalfreedom')
|
|
}
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://repo.mattmalec.com/repository/releases')
|
|
content {
|
|
includeGroup('com.mattmalec')
|
|
}
|
|
}
|
|
|
|
maven {
|
|
url = uri('https://repo.essentialsx.net/releases/')
|
|
content {
|
|
content {
|
|
includeGroup('net.essentialsx')
|
|
includeGroup('net.ess3')
|
|
}
|
|
}
|
|
}
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
implementation('commons-io:commons-io:2.11.0')
|
|
implementation('org.apache.commons:commons-lang3:3.12.0')
|
|
implementation('commons-codec:commons-codec:1.15')
|
|
implementation('io.papermc:paperlib:1.0.6')
|
|
implementation('org.bstats:bstats-base:2.2.1')
|
|
implementation('org.bstats:bstats-bukkit:2.2.1')
|
|
implementation('org.reflections:reflections:0.9.12')
|
|
implementation('org.javassist:javassist:3.28.0-GA')
|
|
implementation('org.jetbrains:annotations:22.0.0')
|
|
implementation('com.mattmalec:Pterodactyl4J:2.BETA_80')
|
|
implementation('org.junit.jupiter:junit-jupiter:5.8.1')
|
|
implementation('org.projectlombok:lombok:1.18.20')
|
|
compileOnly('org.spigotmc:spigot:1.17.1-R0.1-SNAPSHOT')
|
|
compileOnly('me.totalfreedom:bukkittelnet:4.6')
|
|
compileOnly('me.totalfreedom:TF-LibsDisguises:10.0.26-SNAPSHOT')
|
|
compileOnly('com.sk89q.worldedit:worldedit-bukkit:7.3.0-SNAPSHOT')
|
|
compileOnly('net.essentialsx:EssentialsX:2.19.0')
|
|
compileOnly('net.dv8tion:JDA:4.3.0_277')
|
|
compileOnly('net.coreprotect:coreprotect:20.1')
|
|
compileOnly('com.sk89q.worldguard:worldguard-bukkit:7.0.6')
|
|
compileOnly('com.github.vexsoftware:votifier:v1.9')
|
|
compileOnly('net.goldtreeservers:worldguardextraflags:4.0.0')
|
|
compileOnly('me.totalfreedom:TFGuilds:2021.06-RC3')
|
|
}
|
|
|
|
group = 'me.totalfreedom'
|
|
version = project.property('project.pluginVersion')
|
|
description = 'TotalFreedomMod'
|
|
java.sourceCompatibility = JavaVersion.VERSION_17
|
|
java.targetCompatibility = JavaVersion.VERSION_17
|
|
archivesBaseName = 'TotalFreedomMod-donotuse'
|
|
|
|
bukkit {
|
|
main = 'me.totalfreedom.totalfreedommod.TotalFreedomMod'
|
|
apiVersion = '1.17'
|
|
version = project.property('project.pluginVersion')
|
|
description = 'Plugin for the Total Freedom server.'
|
|
authors = ['Madgeek1450', 'Prozza']
|
|
softDepend = ['BukkitTelnet', 'Essentials', 'CoreProtect', 'LibsDisguises', 'WorldEdit',
|
|
'WorldGuard', 'WorldGuardExtraFlags', 'TFGuilds', 'JDA', 'Votifier']
|
|
}
|
|
|
|
static def getDate() {
|
|
return new Date().format('MM/dd/yyyy HH:mm')
|
|
}
|
|
|
|
def getGitHash() {
|
|
def stdout = new ByteArrayOutputStream()
|
|
exec {
|
|
commandLine 'git', 'rev-parse', '--short', 'HEAD'
|
|
standardOutput = stdout
|
|
}
|
|
return stdout.toString().trim()
|
|
}
|
|
|
|
def getBuildNumber() {
|
|
def stdout = new ByteArrayOutputStream()
|
|
exec {
|
|
commandLine 'git', 'rev-list', 'HEAD', '--count'
|
|
standardOutput = stdout
|
|
}
|
|
return stdout.toString().trim()
|
|
}
|
|
|
|
tasks.withType(Checkstyle) {
|
|
reports {
|
|
xml.required = false
|
|
html.required = true
|
|
html.stylesheet resources.text.fromFile('config/xsl/checkstyle-custom.xsl')
|
|
}
|
|
}
|
|
|
|
task buildProperties {
|
|
ant.propertyfile(file: "$project.rootDir/src/main/resources/build.properties") {
|
|
entry(key: "buildAuthor", default: "unknown")
|
|
entry(key: "buildNumber", value: getBuildNumber())
|
|
entry(key: "buildDate", value: getDate())
|
|
entry(key: "buildCodeName", value: project.property('project.buildCodeName'))
|
|
entry(key: "buildHead", value: getGitHash())
|
|
}
|
|
}
|
|
|
|
shadowJar {
|
|
shadowJar {
|
|
archiveBaseName.set('TotalFreedomMod')
|
|
archiveClassifier.set('')
|
|
archiveVersion.set('')
|
|
}
|
|
minimize()
|
|
dependencies {
|
|
include(dependency('commons-io:commons-io'))
|
|
include(dependency('org.apache.commons:commons-lang3'))
|
|
include(dependency('commons-codec:commons-codec'))
|
|
include(dependency('org.javassist:javassist'))
|
|
include(dependency('io.papermc:paperlib'))
|
|
include(dependency('org.bstats:bstats-base'))
|
|
include(dependency('org.bstats:bstats-bukkit'))
|
|
include(dependency('org.reflections:reflections'))
|
|
include(dependency('org.jetbrains:annotations'))
|
|
include(dependency('com.mattmalec:Pterodactyl4J'))
|
|
}
|
|
relocate 'org.bstats', 'me.totalfreedom.totalfreedommod'
|
|
relocate 'io.papermc.lib', 'me.totalfreedom.totalfreedommod.paperlib'
|
|
}
|
|
|
|
tasks.compileJava.finalizedBy tasks.buildProperties
|
|
tasks.build.dependsOn tasks.shadowJar
|
|
|
|
publishing {
|
|
publications {
|
|
maven(MavenPublication) {
|
|
from(components.java)
|
|
}
|
|
}
|
|
}
|
|
|
|
tasks.withType(JavaCompile) {
|
|
options.encoding = 'UTF-8'
|
|
}
|