added module-info.class to envelope-loader library

This commit is contained in:
2023-06-13 19:35:14 +08:00
parent 07de45abe5
commit d2040fb02a
3 changed files with 35 additions and 8 deletions

View File

@@ -1,7 +1,7 @@
woggioniMavenRepositoryUrl=https://woggioni.net/mvn/ woggioniMavenRepositoryUrl=https://woggioni.net/mvn/
publishMavenRepositoryUrl=https://mvn.woggioni.net/ publishMavenRepositoryUrl=https://mvn.woggioni.net/
lys.version = 2023.03 lys.version = 2023.06.13
version.envelope=2023.03.04 version.envelope=2023.06.13
version.gradle=7.6 version.gradle=7.6

View File

@@ -7,12 +7,15 @@ ext {
setProperty('jpms.module.name', 'net.woggioni.envelope') setProperty('jpms.module.name', 'net.woggioni.envelope')
} }
configurations { configurations {
embedded { embedded {
visible = false visible = false
canBeConsumed = false canBeConsumed = false
} }
compileOnly.extendsFrom(embedded) compileOnly {
extendsFrom(embedded)
}
tar { tar {
visible = true visible = true
canBeConsumed = true canBeConsumed = true
@@ -22,7 +25,7 @@ configurations {
dependencies { dependencies {
embedded project(path: ":common", configuration: 'archives') embedded project(path: ":common", configuration: 'archives')
embedded project(path: ":loader", configuration: 'archives') embedded project(path: ":loader", configuration: 'embed')
} }
java { java {

View File

@@ -7,12 +7,15 @@ ext {
setProperty('jpms.module.name', 'net.woggioni.envelope.loader') setProperty('jpms.module.name', 'net.woggioni.envelope.loader')
} }
compileJava11 { configurations {
exclude('module-info.java') embed {
canBeResolved = true
canBeConsumed = true
visible = true
transitive = true
}
} }
publishing { publishing {
publications { publications {
maven(MavenPublication) { maven(MavenPublication) {
@@ -24,3 +27,24 @@ publishing {
} }
} }
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)
}