有几次,为了解决问题或更新依赖项,我不得不启用给定的gradle 选项设置。
例如,Robolectric 4.0 迁移指南指出:
把它放在你的 gradle.properties 中:
android.enableUnitTestBinaryResources=true
同样,为了调试数据绑定编译错误,我遵循了 Gradle 构建日志中打印的建议:
Gradle 可能会禁用增量编译 [...]。
考虑在 gradle.properties 文件中设置实验特性标志android.enableSeparateAnnotationProcessing=true
,以在单独的任务中运行注释处理并使编译增量。
从这两个示例中,我了解到作者(Robolectric/gradle 维护者)相信启用此选项将对每种情况产生积极影响。
但是,在这两种情况下,我都会在构建输出中收到此警告:
警告:选项设置 'android.enableUnitTestBinaryResources=true' 是实验性的并且不受支持。当前默认值为“假”。
警告:选项设置 'android.enableSeparateAnnotationProcessing=true' 是实验性的并且不受支持。当前默认值为“假”。
我已经在我gradle.properties
的几个月里挂上了旗帜android.databinding.enableV2=true
。为了查看它是如何处理的,我尝试将它放到false
,它带来了相同的The option setting 'android.databinding.enableV2=false' is experimental and unsupported.
警告(这似乎表明一个unsupported
设置被忽略了)。
我了解这些是实验性功能标志。但是不支持呢?这是否意味着如果出现任何问题,我不应该期望得到支持,或者这是否意味着它们将被忽略?
如果这意味着它们被忽略,那么这些属性应该如何使用?