Gradle生成jar文件的名称与版本问题

在使用Gradle对SpringBoot进行项目管理时,项目打包的jar文件名称没有版本号,且文件名称后面都加入了plain字样。如何让Gradle打包生成的jar文件符合常见的命名要求。实际上在Gradle的配置文件build.gradle中进入设置即可完成。从网上查看的资料来看多数是Gradle早期的版本,对于Gradle的高级版本或未来的版本有些设置已经被废弃了,下面是Gradle7.1之后可以正确使用的方法。

jar {
        enabled = true
        bootJar.enabled = false
        archiveClassifier = 'snapshot'
        manifest {
            attributes('Implementation-Title': 'Gradle',
                    'Implementation-Version': archiveVersion)
        }
    }

 在任务jar中的属性archiveClassifier可以定义为空,这样打包生成的jar文件就不会出现plain后缀字样了。

manifest定义的属性Implementation-Version,则会添加jar文件的版本号,Gradle5之后的参数使用archiveVersion还定义每个包的版本,和项目version相同的设计被废弃了。

 参考资料:

https://docs.gradle.org/current/dsl/org.gradle.api.tasks.bundling.Jar.html#org.gradle.api.tasks.bundling.Jar:archiveName

posted @ 2023-01-13 00:28  培轩  阅读(2526)  评论(0)    收藏  举报