1
0
mirror of https://github.com/plexusorg/Plex.git synced 2025-01-12 09:44:02 +00:00
Plex/server/build.gradle

140 lines
4.8 KiB
Groovy
Raw Normal View History

2022-04-10 01:47:33 -05:00
plugins {
id "net.minecrell.plugin-yml.bukkit" version "0.6.1-SNAPSHOT"
2022-04-10 01:47:33 -05:00
}
dependencies {
2022-04-25 19:07:55 -05:00
library "org.projectlombok:lombok:1.18.24"
annotationProcessor "org.projectlombok:lombok:1.18.24"
2022-04-10 01:47:33 -05:00
library "org.json:json:20220320"
library "commons-io:commons-io:2.11.0"
library "dev.morphia.morphia:morphia-core:2.2.6"
2022-04-25 19:07:55 -05:00
library "redis.clients:jedis:4.2.2"
2022-04-10 01:47:33 -05:00
library "org.mariadb.jdbc:mariadb-java-client:3.0.4"
library "com.zaxxer:HikariCP:5.0.1"
library "org.apache.httpcomponents:httpclient:4.5.13"
library "org.apache.commons:commons-lang3:3.12.0"
2022-04-25 19:07:55 -05:00
library "org.apache.maven.resolver:maven-resolver-api:1.8.0"
library "org.apache.maven.resolver:maven-resolver-impl:1.8.0"
library "org.apache.maven.resolver:maven-resolver-connector-basic:1.8.0"
library "org.apache.maven.resolver:maven-resolver-transport-http:1.8.0"
2022-04-10 01:47:33 -05:00
library "org.apache.maven:maven-resolver-provider:3.8.5"
library "org.eclipse.jetty:jetty-server:11.0.9"
library "org.eclipse.jetty:jetty-servlet:11.0.9"
library "org.eclipse.jetty:jetty-proxy:11.0.9"
library "com.google.code.gson:gson:2.9.0"
compileOnly "io.papermc.paper:paper-api:1.18.2-R0.1-SNAPSHOT"
2022-04-12 21:22:17 -05:00
compileOnly("com.github.MilkBowl:VaultAPI:1.7") {
exclude group: "org.bukkit", module: "bukkit"
}
2022-04-10 01:47:33 -05:00
implementation "org.bstats:bstats-base:3.0.0"
implementation "org.bstats:bstats-bukkit:3.0.0"
implementation project(":api")
2022-04-10 01:47:33 -05:00
}
2022-04-23 23:42:01 -05:00
group = rootProject.group
version = rootProject.version
description = "Plex-Server"
2022-04-09 00:14:36 -05:00
2022-04-10 01:47:33 -05:00
shadowJar {
2022-04-23 23:35:37 -05:00
archiveBaseName.set("Plex")
2022-04-10 17:27:46 -05:00
archiveClassifier.set("")
2022-04-10 01:47:33 -05:00
relocate "org.bstats", "dev.plex"
}
2022-01-03 21:53:22 -06:00
2022-04-10 01:47:33 -05:00
bukkit {
name = "Plex"
version = project.version
2022-04-10 01:47:33 -05:00
description = "Plex provides a new experience for freedom servers."
main = "dev.plex.Plex"
website = "https://plex.us.org"
2022-04-19 21:16:19 -05:00
authors = ["Telesphoreo", "taahanis", "supernt"]
softDepend = ["Vault"]
2022-04-10 01:47:33 -05:00
apiVersion = "1.18"
}
2022-03-26 17:22:08 -05:00
2022-04-10 01:47:33 -05:00
String getGitHash() {
def stdout = new ByteArrayOutputStream()
try {
exec {
commandLine "git", "rev-parse", "--short", "HEAD"
standardOutput = stdout
ignoreExitValue = true
}
} catch (GradleException e) {
logger.error("Couldn't determine Git head because Git is not installed. " + e.getMessage())
2022-04-09 23:51:27 -05:00
}
2022-04-10 01:47:33 -05:00
return stdout.size() > 0 ? stdout.toString().trim() : "unknown"
}
2022-03-26 17:22:08 -05:00
2022-04-10 01:47:33 -05:00
String getBuildNumber() {
def stdout = new ByteArrayOutputStream()
try {
exec {
commandLine "git", "rev-list", "HEAD", "--count"
standardOutput = stdout
ignoreExitValue = true
}
} catch (GradleException e) {
logger.error("Couldn't determine build number because Git is not installed. " + e.getMessage())
2022-03-26 16:36:29 -05:00
}
2022-04-10 01:47:33 -05:00
return stdout.size() ? stdout.toString().trim() + " (local)" : "unknown"
}
2022-03-26 16:36:29 -05:00
2022-04-10 01:47:33 -05:00
static def getDate() {
2022-04-10 18:30:21 -05:00
return new Date().format("MM/dd/yyyy '<light_purple>at<gold>' hh:mm:ss a z")
2022-04-10 01:47:33 -05:00
}
task buildProperties {
ant.propertyfile(file: "$project.projectDir/src/main/resources/build.properties") {
2022-04-10 01:47:33 -05:00
entry(key: "buildAuthor", default: System.getenv("JENKINS_URL") != null ? "jenkins" : "unknown")
entry(key: "buildNumber", value: System.getenv("JENKINS_URL") != null ? System.getenv("BUILD_NUMBER") + " (Jenkins)" : getBuildNumber())
entry(key: "buildDate", value: getDate())
entry(key: "buildHead", value: getGitHash())
2022-04-09 23:51:27 -05:00
}
2022-04-10 01:47:33 -05:00
}
2022-01-03 21:53:22 -06:00
2022-04-10 01:47:33 -05:00
tasks {
build {
dependsOn(shadowJar)
finalizedBy(buildProperties)
}
2022-04-23 23:35:37 -05:00
jar {
enabled = false
}
shadowJar {
finalizedBy(rootProject.tasks.copyJars)
}
2022-04-10 01:47:33 -05:00
javadoc {
options.memberLevel = JavadocMemberLevel.PRIVATE
}
2022-04-24 00:01:19 -05:00
}
publishing {
publications {
maven(MavenPublication) {
pom.withXml {
def dependenciesNode = asNode().appendNode("dependencies")
configurations.getByName("library").getAllDependencies().each { dependency ->
dependenciesNode.appendNode("dependency").with {
it.appendNode("groupId", dependency.group)
it.appendNode("artifactId", dependency.name)
it.appendNode("version", dependency.version)
it.appendNode("scope", "provided")
}
}
configurations.getByName("implementation").getAllDependencies().each { dependency ->
dependenciesNode.appendNode("dependency").with {
it.appendNode("groupId", dependency.group)
it.appendNode("artifactId", dependency.name)
it.appendNode("version", dependency.version)
it.appendNode("scope", "runtime")
}
}
}
2022-04-24 13:10:46 -05:00
artifacts = [shadowJar]
2022-04-24 00:01:19 -05:00
}
}
}