Gradle 3.0.0-alpha1 与 kotlin-android 插件 1.1.2-3 不兼容? [复制]

Posted

技术标签:

【中文标题】Gradle 3.0.0-alpha1 与 kotlin-android 插件 1.1.2-3 不兼容? [复制]【英文标题】:Gradle 3.0.0-alpha1 isn't compatible with kotlin-android plugin 1.1.2-3? [duplicate] 【发布时间】:2017-10-18 18:15:38 【问题描述】:

我安装 android Studio 3.0 Canary 1 并使用 kotlin 创建新项目。 并得到这个错误:

错误:找不到方法 'com.android.build.gradle.internal.variant.BaseVariantData.getOutputs()Ljava/util/List;'。 此意外错误的可能原因包括:

Gradle 的 依赖项缓存可能已损坏(这有时会在网络连接后发生 连接超时。)重新下载依赖项 和同步项目(需要网络) Gradle 的状态 构建过程(守护进程)可能已损坏。停止所有 Gradle 守护进程可能 解决这个问题。停止 Gradle 构建 进程(需要重新启动) 您的项目可能正在使用 与其他插件不兼容的第三方插件 请求的项目或 Gradle 版本 项目。 在 Gradle 进程损坏的情况下,您可以 还可以尝试关闭 IDE,然后终止所有 Java 进程。

如果我从 build.gradle 中删除 kotlin-android 插件,它会成功构建。

构建等级:

buildscript 
    ext.kotlin_version = '1.1.2-3'
    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:$kotlin_version"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    


allprojects 
    repositories 
        jcenter()
        maven  url 'https://maven.google.com' 
        mavenCentral()
    


task clean(type: Delete) 
    delete rootProject.buildDir

app\build.gradle

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'

android 
    compileSdkVersion 25
    buildToolsVersion "25.0.3"
    defaultConfig 
        applicationId "com.dmytrobazunov.databasetest"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    
    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'
    )
    compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
    compile 'com.android.support:appcompat-v7:25.3.1'
    testCompile 'junit:junit:4.12'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.support:design:25.3.1'

有人知道如何解决这个问题吗?

【问题讨论】:

您可以通过链接到重复的问题和答案来改进您的“重复”响应。并非所有人都发现 【参考方案1】:

您需要将 Kotlin 插件版本更改为 1.1.2-4

【讨论】:

即使我使用了这个 kotlin 版本,我也遇到了同样的问题【参考方案2】:

当您从以前版本的 Android Studio 导入设置时会发生这种情况。将您的 kotlin 插件版本添加到 1.1.2-4 并删除文件夹 ~/Library/Application Support/AndroidStudioPreview3.0/Kotlin(例如,如果您使用的是 mac)

【讨论】:

以上是关于Gradle 3.0.0-alpha1 与 kotlin-android 插件 1.1.2-3 不兼容? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

hadoop 3.0.0-alpha1

hadoop 3.0.0 alpha1 伪分布式搭建

Apache Hadoop 3.0.0-alpha1,重写 Shell 脚本

hadoop 3.0.0 alpha1 分布式搭建

了解 Gradle 和 buildType Task

Kotlin gradle 无法初始化类 org.jetbrains.kotlin.gradle.internal.KotlinSourceSetProviderImplKt