2021-01-12 19:22:29 +01:00
|
|
|
plugins {
|
|
|
|
id 'java'
|
2021-06-11 21:16:18 +02:00
|
|
|
id 'com.github.johnrengelman.shadow' version '7.0.0'
|
2021-01-12 19:22:29 +01:00
|
|
|
id 'maven-publish'
|
|
|
|
}
|
2021-01-01 18:40:42 +01:00
|
|
|
|
2021-01-12 19:22:29 +01:00
|
|
|
group 'WildLoaders'
|
2021-11-06 13:42:02 +01:00
|
|
|
version = "1.0.1"
|
2021-01-01 18:40:42 +01:00
|
|
|
|
|
|
|
subprojects {
|
|
|
|
apply plugin: 'java'
|
|
|
|
apply plugin: 'com.github.johnrengelman.shadow'
|
|
|
|
|
|
|
|
repositories {
|
|
|
|
maven { url 'https://repo.bg-software.com/repository/nms/' }
|
2021-06-11 21:16:18 +02:00
|
|
|
maven { url 'https://repo.bg-software.com/repository/common/' }
|
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
compileOnly 'com.bgsoftware.common.reflection:ReflectionUtils:latest'
|
2021-01-01 18:40:42 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
shadowJar {
|
|
|
|
archiveName = "${project.name}.jar"
|
|
|
|
destinationDir = file("../archive/")
|
|
|
|
}
|
|
|
|
|
|
|
|
build {
|
|
|
|
dependsOn shadowJar
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
repositories {
|
|
|
|
maven { url 'https://repo.bg-software.com/repository/nms/' }
|
|
|
|
maven { url 'https://repo.bg-software.com/repository/api/' }
|
|
|
|
maven { url 'https://repo.bg-software.com/repository/public-libs/' }
|
2021-06-11 21:16:18 +02:00
|
|
|
maven { url 'https://repo.bg-software.com/repository/common/' }
|
2021-01-01 18:40:42 +01:00
|
|
|
|
|
|
|
String mavenUsername = project.hasProperty('mavenUsername') ? project.mavenUsername : System.getenv('mavenUsername');
|
|
|
|
String mavenPassword = project.hasProperty('mavenPassword') ? project.mavenPassword : System.getenv('mavenPassword');
|
|
|
|
|
|
|
|
if(mavenUsername != null && mavenPassword != null) {
|
|
|
|
maven {
|
|
|
|
url 'https://repo.bg-software.com/repository/private-libs/'
|
|
|
|
credentials {
|
|
|
|
username mavenUsername
|
|
|
|
password mavenPassword
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
2021-01-12 19:22:29 +01:00
|
|
|
implementation project(":API")
|
|
|
|
implementation fileTree("archive")
|
2021-01-01 18:40:42 +01:00
|
|
|
|
2021-06-11 21:16:18 +02:00
|
|
|
implementation 'com.bgsoftware.common.reflection:ReflectionUtils:latest'
|
|
|
|
|
2021-01-01 18:40:42 +01:00
|
|
|
// Spigot jars
|
2021-08-31 19:43:45 +02:00
|
|
|
compileOnly "org.spigotmc:v1_8_R3:latest"
|
2021-01-01 18:40:42 +01:00
|
|
|
compileOnly 'org.spigotmc:v1_16_R3-Tuinity:latest'
|
|
|
|
|
|
|
|
// Plugin Hooks
|
|
|
|
compileOnly "com.massivecraft:Factions:latest"
|
|
|
|
compileOnly "com.drtshock:FactionsUUID:latest"
|
|
|
|
compileOnly "net.prosavage:FactionsX:latest"
|
|
|
|
compileOnly "com.massivecraft:MassiveCore:latest"
|
|
|
|
compileOnly "com.bgsoftware:SuperiorSkyblockAPI:latest"
|
|
|
|
compileOnly "com.songoda:EpicSpawners-6:latest"
|
|
|
|
}
|
|
|
|
|
|
|
|
jar {
|
|
|
|
from {
|
|
|
|
for (File file : new File("archive").listFiles()) {
|
|
|
|
zipTree(file)
|
|
|
|
}
|
|
|
|
}
|
2021-01-12 19:22:29 +01:00
|
|
|
}
|
2021-01-01 18:40:42 +01:00
|
|
|
|
2021-01-12 19:22:29 +01:00
|
|
|
processResources {
|
|
|
|
outputs.upToDateWhen {false}
|
2021-11-06 13:26:56 +01:00
|
|
|
String versionNumber = System.getenv("BUILD_NUMBER") == null ? version : version + "." + System.getenv("BUILD_NUMBER")
|
2021-01-12 19:22:29 +01:00
|
|
|
eachFile { details ->
|
|
|
|
if (details.name.contentEquals('plugin.yml')) {
|
|
|
|
filter { String line ->
|
2021-03-14 10:50:13 +01:00
|
|
|
line.replace('${project.version}', versionNumber)
|
2021-01-01 18:40:42 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
shadowJar {
|
|
|
|
dependsOn(jar)
|
2021-01-04 00:24:56 +01:00
|
|
|
|
|
|
|
if(System.getenv("BUILD_NUMBER") == null){
|
2021-11-06 13:26:56 +01:00
|
|
|
archiveName = rootProject.name + "-" + version + ".jar"
|
2021-01-04 00:24:56 +01:00
|
|
|
}
|
|
|
|
else{
|
2021-11-06 13:26:56 +01:00
|
|
|
archiveName = rootProject.name + "-" + version + "-b" + System.getenv("BUILD_NUMBER") + ".jar"
|
2021-01-04 00:24:56 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
delete fileTree('./target/') {
|
|
|
|
exclude archiveName
|
|
|
|
}
|
|
|
|
|
2021-01-01 18:40:42 +01:00
|
|
|
destinationDir = file("./target/")
|
|
|
|
from sourceSets.getByName("main").output
|
|
|
|
configurations = [project.configurations.getByName("runtimeClasspath")]
|
|
|
|
}
|
|
|
|
|
2021-05-17 10:21:58 +02:00
|
|
|
task copyAPI(type: Copy) {
|
|
|
|
from './archive/API.jar'
|
|
|
|
into './target/'
|
|
|
|
rename('API.jar', rootProject.name + 'API.jar')
|
|
|
|
}
|
|
|
|
|
2021-03-19 20:23:07 +01:00
|
|
|
clean {
|
|
|
|
delete file('./archive/')
|
|
|
|
}
|
|
|
|
|
2021-01-01 18:40:42 +01:00
|
|
|
build {
|
|
|
|
dependsOn shadowJar
|
2021-05-17 10:21:58 +02:00
|
|
|
dependsOn copyAPI
|
2021-03-19 20:23:07 +01:00
|
|
|
dependsOn clean
|
2021-01-01 18:40:42 +01:00
|
|
|
}
|
2021-01-12 19:22:29 +01:00
|
|
|
|
2021-01-01 18:40:42 +01:00
|
|
|
publish.shouldRunAfter shadowJar
|
|
|
|
shadowJar.shouldRunAfter build
|
2021-03-19 20:23:07 +01:00
|
|
|
build.shouldRunAfter subprojects.build
|