I want to specify the jar name and version in build.gradle, so my build.gradle looks like below.
apply plugin: 'java' version = "1.00.00" dependencies { compile files('../../lib/abc.jar') } jar{ manifest{ attributes ("Fw-Version" : "2.50.00", "${parent.manifestSectionName}") } archiveName 'abc.jar' }
So when I do
gradle clean build, what I was expecting was that the generated jar name would be abc-1.00.00.jar
But its not happening, the output jar name is getting as abc.jar only and its just ignoring the version. I want to specify both jar name and version, so how can I achieve that?
First install Gradle on your machine, then open up your project directory via the command line. Run gradle wrapper and you are done! You can add the --gradle-version X.Y argument to specify which version of Gradle to use.
archiveName 'abc.jar'
in your jar
configuration is forcing the name to be 'abc.jar'. The default format for the jar name is ${baseName}-${appendix}-${version}-${classifier}.${extension}
, where baseName
is the name of your project and version
is the version of the project. If you remove the archiveName line in your configuration you'll have the format you're after. If you want the name of the archive to be different from the project name set the baseName
instead, e.g.
jar { manifest{ attributes ("Fw-Version" : "2.50.00", "${parent.manifestSectionName}") } baseName 'abc' }
See https://docs.gradle.org/current/dsl/org.gradle.api.tasks.bundling.Jar.html#org.gradle.api.tasks.bundling.Jar:archiveName for more info on configuring the jar
task.
For Gradle 5+
build.gradle
groovy DSL
archiveBaseName = 'foo'
build.gradle.kts
kotlin DSL
archivesBaseName.set("foo") // Notice the double quotes
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With