use shadowJar for addon packaging

This commit is contained in:
dfsek 2022-05-05 08:32:48 -07:00
parent 41e7ad35bd
commit 0c302456a2
5 changed files with 10 additions and 31 deletions

View File

@ -43,6 +43,12 @@ afterEvaluate {
configureDistribution()
}
forSubProjects(":common:addons") {
apply(plugin = "com.github.johnrengelman.shadow")
tasks.named("build") {
finalizedBy(tasks.named("shadowJar"))
}
dependencies {
"compileOnly"(project(":common:api"))
"implementation"("net.jafama", "jafama", Versions.Libraries.Internal.jafama)

View File

@ -21,11 +21,7 @@ fun Project.addonDir(dir: File, task: Task) {
it.delete()
}
forSubProjects(":common:addons") {
val jar = if (tasks.findByName("shadowJar") != null) {
(tasks.named("shadowJar").get() as ShadowJar)
} else {
(tasks.named("jar").get() as Jar)
}
val jar = tasks.named("shadowJar").get() as ShadowJar
val boot = if (extra.has("bootstrap") && extra.get("bootstrap") as Boolean) "bootstrap/" else ""
val target = File(dir, boot + jar.archiveFileName.get())

View File

@ -146,10 +146,4 @@ fun downloadPack(packUrl: URL, project: Project) {
file.outputStream().write(packUrl.readBytes())
}
fun Project.getJarTask(): Jar {
return if (tasks.findByName("shadowJar") != null) {
(tasks.named("shadowJar").get() as ShadowJar)
} else {
(tasks.named("jar").get() as Jar)
}
}
fun Project.getJarTask() = tasks.named("shadowJar").get() as ShadowJar

View File

@ -2,24 +2,16 @@ import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
version = version("0.1.0")
plugins {
id("com.github.johnrengelman.shadow")
}
repositories {
maven { url = uri("https://jitpack.io/") }
}
dependencies {
api("commons-io:commons-io:2.6")
api("commons-io:commons-io:2.7")
api("com.github.Querz:NBT:6.1")
compileOnlyApi(project(":common:addons:manifest-addon-loader"))
}
tasks.named<ShadowJar>("shadowJar") {
relocate("org.apache.commons", "com.dfsek.terra.addons.sponge.lib.commons")
}
tasks.named("build") {
finalizedBy(tasks.named("shadowJar"))
}

View File

@ -2,20 +2,11 @@ import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
version = version("0.1.0")
plugins {
id("com.github.johnrengelman.shadow")
}
dependencies {
api("commons-io:commons-io:2.6")
api("commons-io:commons-io:2.7")
compileOnlyApi(project(":common:addons:manifest-addon-loader"))
}
tasks.named<ShadowJar>("shadowJar") {
relocate("org.apache.commons", "com.dfsek.terra.addons.terrascript.lib.commons")
}
tasks.named("build") {
finalizedBy(tasks.named("shadowJar"))
}