L'application du plugin 'kotlin-android' dans une application instantanée indique que "null ne peut pas être transmis au type non nul" com.android.build.gradleBasePlugin "

J'ai essayé de combiner les nouvelles applications Android instantanément publiées avec le langage de programmation Kotlin. Après avoir créé mon projet à l'aide de la configuration suivante (standard?), J'ai une erreur avec le message "null ne peut pas être transmis à un type non nul com.android.build.gradle.BasePlugin" lorsque j'essaie de créer l'application. L'utilisation de Kotlin fonctionne bien avec les modules standard «com.android.application» ; L'erreur est lancée uniquement lorsque j'essaie de l'utiliser dans un module d'application instantanée.

Haut niveau build.gradle :

  • Comment gérer la pagination en rénovation
  • Comment puis-je obtenir le centre x, y de ma vue dans Android?
  • Gradle (plugin expérimental Android) ignore une dépendance du projet
  • Disposition de contrainte Android par programme?
  • Comment créer une fonction kernel linux à ftrace function_graph tracer?
  • Android Studio: Manifest Android n'existe pas ou possède une étiquette racine incorrecte
  • buildscript { repositories { maven { url 'https://maven.google.com' } jcenter() } dependencies { classpath "com.android.tools.build:gradle:3.0.0-alpha1" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.2-4" } } // ... 

    Module d' application build.gradle , dans lequel Kotlin fonctionne:

     apply plugin: 'com.android.application' apply plugin: 'kotlin-android' // This will work. android { compileSdkVersion 25 buildToolsVersion "25.0.2" defaultConfig { // ... } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { implementation project(':feature') implementation project(':base') } 

    Module de base build.gradle , dans lequel Kotlin ne fonctionne pas :

     apply plugin: 'com.android.feature' apply plugin: 'kotlin-android' // This won't work. android { compileSdkVersion 25 buildToolsVersion "25.0.2" baseFeature true defaultConfig { // ... } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { feature project(':tracker') compile 'com.android.support:appcompat-v7:25.+' compile 'com.android.support.constraint:constraint-layout:1.0.2' // Kotlin standard library. compile "org.jetbrains.kotlin:kotlin-stdlib:${gradleKotlinVersion}" } 

    Module instantapp build.gradle :

     apply plugin: 'com.android.instantapp' dependencies { implementation project(':feature') implementation project(':base') } 

    Module de fonctionnalité build.gradle :

     apply plugin: 'com.android.feature' android { compileSdkVersion 25 buildToolsVersion "25.0.2" defaultConfig { // ... } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) implementation project(':base') testCompile 'junit:junit:4.12' } 

    Encore une fois, le module de l' application compile sans problèmes avec cette configuration; D'autre part, Android Studio / Gradle me donne cet étrange "null ne peut pas être transmis au message d'erreur non-null type com.android.build.gradle.BasePlugin" , avec les suggestions pour redéfinir les dépendances et synchroniser le projet (fait ) Ou redémarrez Android Studio.

    Les applications instantanées sont-elles réellement compatibles avec le langage de programmation Kotlin? J'attends vos réponses 🙂

    PS: j'utilise Android Studio 3.0 Canary 1, avec les dernières mises à jour installées à partir de Canary Channel pour les outils de création, etc. Mon plugin Kotlin devrait également être à jour.

  • Soutien MultiDex dans l'erreur d'application Android
  • Comment ajouter une image panoramique dans l'application Google Cardboard?
  • Quelle est la «meilleure pratique» pour passer de «Activités» à «Fragments» pour les applications Android?
  • Simuler le réseau lent sur le simulateur Android
  • L'adaptation 2 ne peut pas télécharger un fichier avec deux paramètres de chaîne séparés supplémentaires
  • Android - Hashtag dans TextView
  • One Solution collect form web for “L'application du plugin 'kotlin-android' dans une application instantanée indique que "null ne peut pas être transmis au type non nul" com.android.build.gradleBasePlugin "”

    Ceci est abordé dans le plugin Kotlin v1.1.2-5 . Veuillez mettre à jour votre version et réessayer.

    Pour référence, le problème avec les versions précédentes du plugin est suivi ici:

    38393607 | Problème de création d'applications instantanées avec Kotlin activé

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.