在gradle中实际使用自定义配置

Pra*_*iya 9 gradle build.gradle

我是新手,在基本问题上苦苦挣扎.我在我的项目中声明了一组编译时依赖项.我的问题陈述是,我想让依赖关系的子集不可传递,而剩下的传递.

我试图进行自编译,从编译扩展并将其传递属性设置为false.

Customcompile.extendsFrom(compile)
Customcompile.transitive = false
Run Code Online (Sandbox Code Playgroud)

通过这个,我假设我声明的任何内容都 Customcompile 'xxx:xxx:1.0'transitive=false应用,并且它将充当编译时依赖性.

但是这不能用这些依赖项编译我的项目

在这个假设中,我错了吗?

Inv*_*row 23

你需要customCompile.extendsFrom(compile)改为compile.extendsFrom(customCompile).

configurations {
    customCompile
    customCompile.transitive = false
    compile.extendsFrom(customCompile)
}
Run Code Online (Sandbox Code Playgroud)

这是因为编译类路径是从compile配置的依赖项派生的.

通过compile从配置扩展customCompile配置,您现在可以包括从customCompile配置到compile配置的所有依赖项.