geforkt von Mirrors/FastAsyncWorldEdit
98 Zeilen
3.0 KiB
Groovy
98 Zeilen
3.0 KiB
Groovy
|
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
|
||
|
|
||
|
subprojects {
|
||
|
apply plugin: 'maven'
|
||
|
apply plugin: 'com.github.johnrengelman.shadow'
|
||
|
apply plugin: 'com.jfrog.artifactory'
|
||
|
configurations {
|
||
|
create("shade")
|
||
|
}
|
||
|
|
||
|
group = rootProject.group + ".worldedit-libs"
|
||
|
|
||
|
tasks.register("jar", ShadowJar) {
|
||
|
configurations = [project.configurations.shade]
|
||
|
classifier = ""
|
||
|
|
||
|
relocate('net.kyori.text', 'com.sk89q.worldedit.util.formatting.text')
|
||
|
}
|
||
|
def altConfigFiles = { String artifactType ->
|
||
|
def deps = configurations.shade.incoming.dependencies
|
||
|
.collect { it.copy() }
|
||
|
.collect { dependency ->
|
||
|
dependency.artifact { artifact ->
|
||
|
artifact.name = dependency.name
|
||
|
artifact.type = artifactType
|
||
|
artifact.extension = 'jar'
|
||
|
artifact.classifier = artifactType
|
||
|
}
|
||
|
dependency
|
||
|
}
|
||
|
|
||
|
return files(configurations.detachedConfiguration(deps as Dependency[])
|
||
|
.resolvedConfiguration.lenientConfiguration.getArtifacts()
|
||
|
.findAll { it.classifier == artifactType }
|
||
|
.collect { zipTree(it.file) })
|
||
|
}
|
||
|
tasks.register("sourcesJar", Jar) {
|
||
|
from {
|
||
|
altConfigFiles('sources')
|
||
|
}
|
||
|
def filePattern = ~'(.*)net/kyori/text((?:/|$).*)'
|
||
|
def textPattern = ~/net\.kyori\.text/
|
||
|
eachFile {
|
||
|
it.filter { String line ->
|
||
|
line.replaceFirst(textPattern, 'com.sk89q.worldedit.util.formatting.text')
|
||
|
}
|
||
|
it.path = it.path.replaceFirst(filePattern, '$1com/sk89q/worldedit/util/formatting/text$2')
|
||
|
}
|
||
|
classifier = "sources"
|
||
|
}
|
||
|
|
||
|
artifacts {
|
||
|
add("default", jar)
|
||
|
add("default", sourcesJar)
|
||
|
}
|
||
|
|
||
|
tasks.register("install", Upload) {
|
||
|
configuration = configurations.default
|
||
|
repositories.mavenInstaller {
|
||
|
pom.version = project.version
|
||
|
pom.artifactId = project.name
|
||
|
}
|
||
|
}
|
||
|
|
||
|
artifactoryPublish {
|
||
|
publishConfigs('default')
|
||
|
}
|
||
|
|
||
|
build.dependsOn(jar, sourcesJar)
|
||
|
}
|
||
|
|
||
|
project("core") {
|
||
|
dependencies {
|
||
|
shade 'net.kyori:text-api:2.0.0'
|
||
|
shade 'net.kyori:text-serializer-gson:2.0.0'
|
||
|
shade 'net.kyori:text-serializer-legacy:2.0.0'
|
||
|
shade 'com.sk89q:jchronic:0.2.4a'
|
||
|
shade 'com.thoughtworks.paranamer:paranamer:2.6'
|
||
|
shade 'com.sk89q.lib:jlibnoise:1.0.0'
|
||
|
}
|
||
|
}
|
||
|
project("bukkit") {
|
||
|
dependencies {
|
||
|
shade 'net.kyori:text-adapter-bukkit:1.0.3'
|
||
|
shade 'org.bstats:bstats-bukkit:1.4'
|
||
|
}
|
||
|
}
|
||
|
project("sponge") {
|
||
|
dependencies {
|
||
|
shade 'net.kyori:text-adapter-spongeapi:1.0.3'
|
||
|
shade 'org.bstats:bstats-sponge:1.4'
|
||
|
}
|
||
|
}
|
||
|
|
||
|
tasks.register("build") {
|
||
|
dependsOn(subprojects.collect { it.tasks.named("build") })
|
||
|
}
|