如何在使用Gradle构建项目时获取实现版本

时间:2014-02-01 14:35:58

标签: gradle

使用Maven构建项目时,可以获得类似this的实施版本。 是否可以使用Gradle做到这一点?

我用我的应用程序从Maven转移到Gradle。 使用Maven构建,我能够显示应用程序版本,例如Application vX.X.X,其中X.X.X是从实现版本中检索到的。可以用Gradle吗?
基本上我希望该版本自动解决。

2 个答案:

答案 0 :(得分:4)

jar {
    manifest {
        attributes('Main-Class':             'Your main class',
                   'Implementation-Title':   'Your title',
                   'Implementation-Version': 'You version')
    }
}

或者如果您使用shadowJar

shadowJar {
        manifest {
            attributes 'Main-Class':             'Your main class'
            attributes 'Implementation-Title':   'Your title'
            attributes 'Implementation-Version': 'You version'
        }
    }

然后在java源代码中你可以使用:

getClass().getPackage().getImplementationVersion()
getClass().getPackage().getImplementationTitle()

在Gradle doc中查看更多信息:https://docs.gradle.org/current/userguide/java_plugin.html#sub:manifest

答案 1 :(得分:0)

正如@JB Nizet所建议的那样,解决方案可以找到here