mirror of
https://github.com/plexusorg/Plex.git
synced 2025-06-27 06:06:40 +00:00
Move Plex to API-driven plugin and fix NoClassDefFoundError on startup
This commit is contained in:
177
server/build.gradle
Normal file
177
server/build.gradle
Normal file
@ -0,0 +1,177 @@
|
||||
plugins {
|
||||
id "java"
|
||||
id "maven-publish"
|
||||
id "net.minecrell.plugin-yml.bukkit" version "0.6.1-SNAPSHOT"
|
||||
id "com.github.johnrengelman.shadow" version "7.1.2"
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenLocal()
|
||||
maven {
|
||||
url = uri("https://papermc.io/repo/repository/maven-public/")
|
||||
}
|
||||
|
||||
maven {
|
||||
url = uri("https://repository.apache.org/content/repositories/snapshots/")
|
||||
}
|
||||
|
||||
maven {
|
||||
url = uri("https://repo.maven.apache.org/maven2/")
|
||||
}
|
||||
|
||||
maven {
|
||||
url = uri("https://jitpack.io")
|
||||
content {
|
||||
includeGroup("com.github.MilkBowl")
|
||||
}
|
||||
}
|
||||
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
library "org.projectlombok:lombok:1.18.22"
|
||||
annotationProcessor "org.projectlombok:lombok:1.18.22"
|
||||
library "org.json:json:20220320"
|
||||
library "commons-io:commons-io:2.11.0"
|
||||
library "dev.morphia.morphia:morphia-core:2.2.6"
|
||||
library "redis.clients:jedis:4.2.1"
|
||||
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"
|
||||
library "org.apache.maven.resolver:maven-resolver-api:1.7.3"
|
||||
library "org.apache.maven.resolver:maven-resolver-impl:1.7.3"
|
||||
library "org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3"
|
||||
library "org.apache.maven.resolver:maven-resolver-transport-http:1.7.3"
|
||||
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"
|
||||
compileOnly("com.github.MilkBowl:VaultAPI:1.7") {
|
||||
exclude group: "org.bukkit", module: "bukkit"
|
||||
}
|
||||
implementation "org.bstats:bstats-base:3.0.0"
|
||||
implementation "org.bstats:bstats-bukkit:3.0.0"
|
||||
implementation project(":api")
|
||||
}
|
||||
|
||||
group = "dev.plex"
|
||||
version = "1.1-SNAPSHOT"
|
||||
description = "Plex"
|
||||
|
||||
shadowJar {
|
||||
archiveClassifier.set("")
|
||||
relocate "org.bstats", "dev.plex"
|
||||
}
|
||||
|
||||
bukkit {
|
||||
name = "Plex"
|
||||
version = project.version
|
||||
description = "Plex provides a new experience for freedom servers."
|
||||
main = "dev.plex.Plex"
|
||||
website = "https://plex.us.org"
|
||||
authors = ["Telesphoreo", "taahanis", "supernt"]
|
||||
softDepend = ["Vault"]
|
||||
apiVersion = "1.18"
|
||||
}
|
||||
|
||||
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())
|
||||
}
|
||||
return stdout.size() > 0 ? stdout.toString().trim() : "unknown"
|
||||
}
|
||||
|
||||
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())
|
||||
}
|
||||
return stdout.size() ? stdout.toString().trim() + " (local)" : "unknown"
|
||||
}
|
||||
|
||||
static def getDate() {
|
||||
return new Date().format("MM/dd/yyyy '<light_purple>at<gold>' hh:mm:ss a z")
|
||||
}
|
||||
|
||||
task buildProperties {
|
||||
ant.propertyfile(file: "$project.projectDir/src/main/resources/build.properties") {
|
||||
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())
|
||||
}
|
||||
}
|
||||
|
||||
java {
|
||||
toolchain.languageVersion.set(JavaLanguageVersion.of(17))
|
||||
}
|
||||
|
||||
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")
|
||||
}
|
||||
}
|
||||
}
|
||||
artifacts = [shadowJar]
|
||||
}
|
||||
}
|
||||
repositories {
|
||||
maven {
|
||||
def releasesRepoUrl = uri("https://nexus.telesphoreo.me/repository/plex-releases/")
|
||||
def snapshotsRepoUrl = uri("https://nexus.telesphoreo.me/repository/plex-snapshots/")
|
||||
url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
|
||||
credentials {
|
||||
username = System.getenv("plexUser")
|
||||
password = System.getenv("plexPassword")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
tasks.withType(JavaCompile) {
|
||||
options.encoding = "UTF-8"
|
||||
}
|
||||
|
||||
tasks {
|
||||
build {
|
||||
dependsOn(shadowJar)
|
||||
finalizedBy(buildProperties)
|
||||
}
|
||||
|
||||
javadoc {
|
||||
options.memberLevel = JavadocMemberLevel.PRIVATE
|
||||
}
|
||||
}
|
BIN
server/build/classes/java/main/dev/plex/Plex.class
Normal file
BIN
server/build/classes/java/main/dev/plex/Plex.class
Normal file
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/PlexBase.class
Normal file
BIN
server/build/classes/java/main/dev/plex/PlexBase.class
Normal file
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/admin/Admin.class
Normal file
BIN
server/build/classes/java/main/dev/plex/admin/Admin.class
Normal file
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/admin/AdminList$1.class
Normal file
BIN
server/build/classes/java/main/dev/plex/admin/AdminList$1.class
Normal file
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/admin/AdminList.class
Normal file
BIN
server/build/classes/java/main/dev/plex/admin/AdminList.class
Normal file
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/cache/DataUtils.class
vendored
Normal file
BIN
server/build/classes/java/main/dev/plex/cache/DataUtils.class
vendored
Normal file
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/cache/PlayerCache.class
vendored
Normal file
BIN
server/build/classes/java/main/dev/plex/cache/PlayerCache.class
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/command/impl/OpCMD.class
Normal file
BIN
server/build/classes/java/main/dev/plex/command/impl/OpCMD.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/config/Config.class
Normal file
BIN
server/build/classes/java/main/dev/plex/config/Config.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/module/PlexModule.class
Normal file
BIN
server/build/classes/java/main/dev/plex/module/PlexModule.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
server/build/classes/java/main/dev/plex/player/PlexPlayer.class
Normal file
BIN
server/build/classes/java/main/dev/plex/player/PlexPlayer.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user