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/