habe ich die folgende allprojects Richtlinie in meinem Stammprojekt build.gradle
Datei:Gradle 3.5 wie jar Basisnamen von archiveBaseName setzen in allproject
allprojects {
dependencies {
testCompile("junit:junit:${junitVersion}")
}
jar {
baseName = project.archivesBaseName
from files(project.subprojects.sourceSets.main.output)
manifest {
attributes(
"Created-By": vendor,
"Specification-Title": jar.archiveName,
"Specification-Version": version,
"Specification-Vendor": vendor,
"Implementation-Title": jar.baseName,
"Implementation-Version" : version,
"Implementation-Vendor": vendor,
)
}
}
}
In jedem Teilprojekt I in ihren build.gradle
die archiveBaseName
neu zu definieren, aber alle Meine JAR-Archive werden mit dem baseName
des archiveBaseName
des Root-Projekts erstellt.
Gibt es eine Möglichkeit zum dynamischen Erstellen meines Archivnamens Basis auf meiner Überschreibung von archiveBaseName
?
Danke. Kennst du den genauen Synthax? Ich habe es auf andere Weise geschafft, indem ich eine 'gradle.properties' Datei in meinem gesamten Unterprojekt erstellt habe. – BigDong
Natürlich, ich wickle einfach das 'jar {}' in 'afterEvaluate {}' – Vampire
Nun, Sie müssen es in zwei Halbes teilen, eine, die den Basisnamen und eine, die die Manifest-Attribute setzt, sonst wird das Überschreiben nicht Arbeit. – Vampire