51 lines
988 B
Groovy
51 lines
988 B
Groovy
plugins {
|
|
alias catalog.plugins.multi.release.jar
|
|
id 'maven-publish'
|
|
}
|
|
|
|
ext {
|
|
setProperty('jpms.module.name', 'net.woggioni.envelope.loader')
|
|
}
|
|
|
|
configurations {
|
|
embed {
|
|
canBeResolved = true
|
|
canBeConsumed = true
|
|
visible = true
|
|
transitive = true
|
|
}
|
|
}
|
|
|
|
publishing {
|
|
publications {
|
|
maven(MavenPublication) {
|
|
group = "net.woggioni.envelope"
|
|
artifactId = rootProject.name + '-' + project.name
|
|
version = rootProject.version
|
|
from components.java
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
tasks.register('embedJar', Jar) { jar ->
|
|
Provider<Jar> jarTaskProvider = tasks.named(JavaPlugin.JAR_TASK_NAME)
|
|
jar.inputs.files(jarTaskProvider)
|
|
archiveClassifier = 'embed'
|
|
from(zipTree(jarTaskProvider.map { it.archiveFile} )) {
|
|
exclude '**/module-info.class'
|
|
}
|
|
manifest{
|
|
attributes([
|
|
'Multi-Release': 'true'
|
|
])
|
|
}
|
|
}
|
|
|
|
|
|
|
|
artifacts {
|
|
embed(embedJar)
|
|
}
|
|
|