错误:数据绑定尚不支持Jack构建

我正在实现DataBinding ,它工作得很完美,但它不允许我使用jackOptions 。 它抛出错误Data Binding does not support Jack builds yetData Binding does not support Jack builds yet

这是我的build.gradle

 android { defaultConfig { ... dataBinding { enabled true } jackOptions { enabled true } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } } 

从yigit的评论来看,很明显这个function仍处于开发阶段,因为他和George是DataBinding的项目成员。

我们正在努力… yigit

我还发现问题已经报告问题210615:使用Jack编译器进行数据绑定

UPDATE

2.3将允许您使用数据绑定杰克,但它仍然有局限性

Google将直接在当前的javac和dx工具集中添加对Java 8语言function的支持,并弃用Jack工具链。

看看这个,Android上的Java 8语言function支持未来

https://android-developers.googleblog.com/2017/03/future-of-java-8-language-feature.html

更新

Android构建系统现在支持Java 8语言function

昨天,我们发布了Android Studio 2.4 Preview 6.现在,javac / dx编译路径中的Android构建系统支持Java 8语言function。 Android Studio的Gradle插件现在将Java 8类文件转换为兼容Java 7的类文件,因此您可以使用lambdas,方法引用和Java 8的其他function。

来源: https : //android-developers.googleblog.com/2017/04/java-8-language-features-support-update.html

从gradle:2.2.0-alpha5开始,Jack版本尚未与DataBinding兼容。

如果要使用Java 8的数据绑定,可以使用retrolambda 。