Подтвердить что ты не робот

Применение плагина "kotlin-android" в мгновенном приложении приводит к тому, что "null не может быть применено к ненулевому типу com.android.build.gradleBasePlugin"

Я пытаюсь объединить недавно выпущенные Android Instant Apps с языком программирования Kotlin. После создания моего проекта, используя следующую (стандартную?) Настройку, я получаю сообщение об ошибке с сообщением "null не может быть применено к ненулевому типу com.android.build.gradle.BasePlugin" , когда я пытаюсь для создания приложения. Использование Kotlin отлично работает со стандартными модулями 'com.android.application'; Ошибка вызывается только тогда, когда я пытаюсь использовать ее в модуле Instant App.

Верхний уровень build.gradle:

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"
    }
}

// ...

модуль приложения build.gradle, в котором работает Kotlin :

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')
}

базовый модуль build.gradle, в котором работает Kotlin :

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}"
}

модуль instantapp build.gradle:

apply plugin: 'com.android.instantapp'

dependencies {
    implementation project(':feature')
    implementation project(':base')
}

модуль 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'
}

Опять же, модуль приложения компилируется без проблем с этой конфигурацией; с другой стороны, Android Studio/ Gradle дает мне этот странный "null не может быть передан в непустой тип com.android.build.gradle.BasePlugin" сообщение об ошибке с предложениями повторно -загрузить зависимости и синхронизировать проект (сделать) или перезапустить Android Studio.

Действительно ли приложения Instant Apps совместимы с языком программирования Kotlin? Я с нетерпением жду ваших ответов:)

PS: Я использую Android Studio 3.0 Canary 1, с последними обновлениями, установленными из инструментов Canary Channel for Build и т.д. Мой плагин Kotlin также должен быть обновлен.

4b9b3361

Ответ 2

Что касается Отслеживание проблем Google, это исправлено. Тем временем вы можете вручную обновить плагин 1.1.3 kotlin.

Если какая-либо проблема не устранена, сообщите в трекер Google, который они откроют для проверки.