dependencies {
test "com.test:testA:1.0@jar"
test "com.test:testB:1.0@jar"
}
task('collectArtifacts', type: Copy) {
from project.configurations.test
into 'artifacts/'
}
假设缺少工件testA且testB可用
当我使用./gradlew collectArtifacts时,它显然抱怨说 ">找不到com.test:testA:1.0"。
我如何向gradle询问:
答案 0 :(得分:7)
也许有点违反直觉,您可以将getResolvedConfiguration()
与getLenientConfiguration()
结合使用,以检索在某些引用无法解析时不会失败的配置。
task('collectArtifacts', type: Copy) {
from project.configurations.test.resolvedConfiguration.lenientConfiguration.getFiles(Specs.satisfyAll())
into 'artifacts/'
}
请参阅documentation。
答案 1 :(得分:0)
您可以尝试以下方法。不确定test
到底是什么,所以我假设它是testCompile
的拼写错误。
task('collectArtifacts', type: Copy) {
from project.configurations.testCompile.findAll { it.exists() }
into 'artifacts/'
}