J'implémente DataBinding
, cela fonctionne parfaitement, mais cela ne me permet pas d'utiliser jackOptions
. Il renvoie l'erreur Data Binding does not support Jack builds yet
lors de la construction.
Voici mon build.gradle
Android {
defaultConfig {
...
dataBinding {
enabled true
}
jackOptions {
enabled true
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
D'après le commentaire de yigit, il est clair que cette fonctionnalité est encore en développement, car George et lui sont membres du projet DataBinding.
nous y travaillons ... yigit
J'ai également constaté que le problème était déjà signalé Numéro 210615: Liaison de données avec le compilateur Jack
UPDATE
2.3 vous permettra d'utiliser la liaison de données avec jack, mais il a toujours des limites
Google ajoutera une prise en charge des fonctionnalités du langage Java 8 directement dans les outils actuels javac et dx et déconseillera la chaîne d'outils Jack.
Découvrez cela, Future of Java 8 Language Support Support sur Android
https://Android-developers.googleblog.com/2017/03/future-of-Java-8-language-feature.html
Mises à jour :
Les fonctionnalités du langage Java 8 sont désormais prises en charge par le système de construction Android
Hier, nous avons publié Android Studio 2.4 Preview 6. Les fonctionnalités du langage Java 8 sont désormais prises en charge par le système de génération Android dans le chemin de compilation javac/dx. Le plug-in Gradle d'Android Studio convertit désormais les fichiers de classe Java 8 en fichiers de classe compatibles Java 7, afin que vous puissiez utiliser des lambdas, des références de méthodes et d'autres fonctionnalités de Java 8.
Source: https://Android-developers.googleblog.com/2017/04/Java-8-language-features-support-update.html
À partir de la version 2.2.0-alpha5, les versions de Jack ne sont pas encore compatibles avec DataBinding.
Si vous souhaitez utiliser la liaison de données avec Java 8, vous pouvez utiliser retrolambda .