如何从build.gradle中的settings.gradle继承方法

时间:2017-02-10 23:06:24

标签: java gradle build.gradle

我是Gradle的新手,并试图确保我不会复制我的代码。在我的父模块中,我分别在settings.gradle和build.gradle文件中使用相同的方法。有没有办法可以设置其中一个文件从另一个文件继承该方法,而不是在两个地方定义方法?

1 个答案:

答案 0 :(得分:0)

您可以将方法放在单独的第三个文件中(例如,子文件夹buildfiles /中的buildMisc.gradle)并从build.gradle中应用此方法,如下所示:

apply from: 'buildfiles/buildMisc.gradle'
那里你也可以放置普通"全球"在你的其他任务中使用的groovy方法,例如

configure(project.rootProject) {
    ext {
        additionalBuildInfo = { subproject ->
        return [
                operatingSystem: "${System.properties['os.name']} (${System.properties['os.version']})",
                continuousIntegration: System.getenv('CI') ? true: false,
                machine: InetAddress.localHost.hostName,
                // Override buildInfo property time
                time: new Date(System.currentTimeMillis()).format('EEE MMM dd HH:mm:ss z yyyy')
        ]
    }
}