gradle - Gradle如何制作配置变量

标签 gradle configuration

Gradle:定义配置foo,如下所示:

task fooJar(type: Jar) {
    ...
}

configurations {
    foo.extendsFrom("compile")
}

artifacts {
    foo fooJar
}

如果配置名称是变量,如何写?例如,
['foo', 'bar'].each {

    task "${it}Jar"(type: Jar) {
       ....
    }

    configurations {
        "$it".extendsFrom("compile")
    }

    artifacts {
        "$it" tasks["${it}Jar"]
    }

}

答案后更新:

第二部分:添加 Artifact :
artifacts.add(config, tasks["${it}Jar"])

错误:
> Could not find method add() for arguments [configuration 'foo', task 
'fooJar'] on object of type 
org.gradle.api.internal.artifacts.dsl.DefaultArtifactHandler.

最佳答案

@see ConfigurationContainer返回的Project.getConfigurations()

例如

Configuration config = configurations.create(it)
config.extendsFrom configurations.getByName('xxx')

关于gradle - Gradle如何制作配置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45453249/

相关文章:

linux - IPTables 在启动时中断 WebServer 连接

c# - 如何在 ASP.NET 样板中设置社交登录?

c - 使用内置库 dll 的 Kotlin/Native Windows cinterop

android - Android 4.1+ 语言环境更改后 Activity 闪烁

exception - Hadoop作业未被杀死

c - 为什么PLL不锁定?我的时钟配置正确吗?

android - 无法更新 Android 中的任何支持库

android - 如何加快 Android Studio 2.0 的工作速度?

gradle - 在 gradle 多项目构建中分组和重用依赖项

java - Gradle-从Jar文件中忽略特定的jar