Files
hamster-core/hamster-core-bungeecord/build.gradle
2023-06-06 11:11:42 +08:00

96 lines
3.0 KiB
Groovy

//file:noinspection GroovyAssignabilityCheck
setArchivesBaseName("HamsterCore-BungeeCord")
evaluationDependsOn(':hamster-core-common')
configurations {
oldJar
}
dependencies {
api project(":hamster-core-common") transitive false
shade project(":hamster-core-common") transitive false
oldJar project(":hamster-core-common") transitive false
//noinspection VulnerableLibrariesLocal
compileOnly 'net.md-5:bungeecord-api:1.19-R0.1-SNAPSHOT'
// https://mvnrepository.com/artifact/net.kyori/adventure-platform-bungeecord
api "net.kyori:adventure-platform-bungeecord:${adventure_version}"
shade "net.kyori:adventure-platform-bungeecord:${adventure_version}"
oldJar "net.kyori:adventure-platform-bungeecord:${adventure_version}"
// // https://mvnrepository.com/artifact/com.squareup.okhttp3/okhttp
// api 'com.squareup.okhttp3:okhttp:4.10.0'
// shade 'com.squareup.okhttp3:okhttp:4.10.0'
// oldJar 'com.squareup.okhttp3:okhttp:4.10.0'
// https://mvnrepository.com/artifact/com.zaxxer/HikariCP
compileOnly 'com.zaxxer:HikariCP:5.0.1'
shade 'com.zaxxer:HikariCP:5.0.1'
//noinspection GradlePackageUpdate
oldJar 'com.zaxxer:HikariCP:4.0.3' exclude group: "org.slf4j"
}
processResources {
inputs.property "version", project.version
filesMatching("bungee.yml") {
expand "version": project.version
}
}
tasks.compileJava.dependsOn(":hamster-core-common:build")
tasks.register("shadowJar", Jar) {
dependsOn("jar")
from([
tasks.jar.outputs.files.collect {
it.isDirectory() ? it : zipTree(it)
},
configurations.shade.collect {
it.isDirectory() ? it : zipTree(it)
}
])
destinationDir(getRootProject().buildDir)
}
tasks.build.dependsOn(shadowJar)
tasks.register("oldJar", Jar) {
dependsOn("jar")
//noinspection GrDeprecatedAPIUsage
setClassifier("Old")
from([
tasks.jar.outputs.files.collect {
it.isDirectory() ? it : zipTree(it)
},
configurations.oldJar.collect {
it.isDirectory() ? it : zipTree(it)
}
])
destinationDir(getRootProject().buildDir)
}
tasks.build.dependsOn(oldJar)
publishing {
publications {
mavenJava(MavenPublication) {
def projectNameSplit = project.name.split('-')
artifactId = projectNameSplit[projectNameSplit.length - 1]
from project.components.java
}
}
repositories {
maven {
def releasesRepoUrl = 'https://maven.airgame.net/maven-releases/'
def snapshotsRepoUrl = 'https://maven.airgame.net/maven-snapshots/'
url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
credentials {
username = rootProject.properties.getOrDefault("maven_username", "")
password = rootProject.properties.getOrDefault("maven_password", "")
}
}
}
}