web-dev-qa-db-fra.com

JDK Version 1.8 actuelle a un bug qui empêche la pièce d'être incrémentielle

Nous essayons d'améliorer les périodes de construction de notre multi-module Android application et nous avons atteint le point où nous avons essayé d'activer la compilation de traitement incrémentielle de l'annotation KAPT.

  • version de studio Android : v3.5.2
  • version de la chambre : v2.2.1
  • version des grades : V5.4.6
  • version du plug-in Android Bridle : v3.5.2
  • Version Kotlin : V1.3.50

gradle.properties:

org.gradle.daemon=true
org.gradle.caching=true
org.gradle.parallel=true

kapt.incremental.apt=true
kapt.use.worker.api=true
kapt.include.compile.classpath=false

Android.databinding.incremental=true

Build.Gradle (à l'intérieur de chaque module utilisant la salle) :

kapt {
    arguments {
        arg("room.incremental", "true")
    }
}

Cependant, tout en essayant de comparer les temps de construction en utilisant gradlew assemble -scan commande, gradle jette l'erreur suivante:

warning: Current JDK version 1.8.0_201-b09 has a bug (https://bugs.openjdk.Java.net/browse/JDK-8007720) that prevents Room from being incremental. Consider using JDK 11+ or the embedded JDK shipped with Android Studio 3.5+.
ANTLR Tool version 4.5.3 used for code generation does not match the current runtime version 4.7.1
[WARN] Incremental annotation processing requested, but support is disabled because the following processors are not incremental: androidx.room.RoomProcessor (DYNAMIC).

J'ai essayé de définir Open JDk 11 comme JDK par défaut pour le projet dans la fenêtre Structure du projet, mais cela n'a pas fonctionné, il s'est plaint de ne pas être JDK 8. Toute idée qui ne va pas avec cette configuration?

14
Bogdan Zurac

Réglage $Java_HOME à /Applications/AndroidStudio.app/Contents/jre/jdk/Contents/Home Pour ma coquille m'a aidé.

0
kollesnica power