java-commons/muscript-all/build.gradle.kts
JFronny 8e696f8a2c
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
feat(muscript): add jar with all modules for use in jfmods
2024-04-14 10:54:31 +02:00

51 lines
1.2 KiB
Plaintext

import io.gitlab.jfronny.scripts.*
import org.gradle.api.internal.catalog.DelegatingProjectDependency
plugins {
commons.library
alias(libs.plugins.shadow)
}
dependencies {
fun depend(dep: DelegatingProjectDependency) {
shadow(dep) { isTransitive = false }
implementation(dep)
}
depend(projects.muscriptCore)
depend(projects.muscriptAst)
depend(projects.muscriptDataDynamic)
depend(projects.muscriptDataAdditional)
depend(projects.muscriptParser)
depend(projects.muscriptSerialize)
depend(projects.muscriptOptimizer)
depend(projects.muscriptRuntime)
}
tasks.shadowJar {
mergeServiceFiles()
archiveClassifier = ""
configurations.clear()
from(project.configurations.shadow, tasks.jar)
}
tasks.jar {
archiveClassifier = "dev"
}
publishing {
publications {
create<MavenPublication>("maven") {
groupId = "io.gitlab.jfronny"
artifactId = "muscript-all"
from(components["java"])
setArtifacts(listOf(tasks.shadowJar, tasks.sourcesJar))
}
}
}
// Otherwise we can't easily overwrite the artifacts to publish while keeping dependency metadata
tasks.withType<GenerateModuleMetadata> {
enabled = false
}