如何在Gradle中一行代码指定两个依赖作用域?
一行指定多作用域依赖的实现方式
在Gradle中,完全可以实现一行代码为同一个依赖指定多个作用域,具体有两种常用方式:
原生逗号分隔写法
这是最简单直接的方式,Gradle原生支持用逗号分隔多个配置名,写法如下:
compileOnly, testImplementation "myDependency"
该写法和你原来分两行写的效果完全一致,会同时将myDependency添加到compileOnly和testImplementation两个依赖配置中。
自定义配置(适合重复使用场景)
如果需要多次使用同一组作用域组合,可以先自定义一个继承自目标配置的新配置:
configurations { // 自定义配置,继承compileOnly和testImplementation的特性 compileTestOnly.extendsFrom compileOnly, testImplementation }
之后就可以用这个自定义配置来添加依赖:
compileTestOnly "myDependency"
注意:你示例中的compileOnly+testImplementation写法Gradle并不支持,上述两种方式是官方认可的可行方案。
内容的提问来源于stack exchange,提问作者Pavel Orekhov
相关产品推荐
相关产品推荐

