错误:Android Gradle插件仅支持Kotlin Gradle插件1.3.0及更高版本

时间:2019-02-09 11:54:11

标签: java android android-studio gradle kotlin

请问如何解决此错误?

  

错误:Android Gradle插件仅支持Kotlin Gradle插件   1.3.0及更高版本。以下依赖项不满足   所需版本:根项目'android'->   org.jetbrains.kotlin:kotlin-gradle-plugin:1.0.6受影响的模块:   android-app

     

警告:配置“编译”已过时,已被替换   与“实施”和“ API”。它将在   2018年。有关更多信息,请参阅:http://d.android.com/r/tools/update-dependency-configurations.html   受影响的模块:android-app

     

警告:配置“ testCompile”已过时,已被替换   与“ testImplementation”。它将在2018年底删除。   更多信息请参见:   http://d.android.com/r/tools/update-dependency-configurations.html   受影响的模块:android-app

     

警告:配置'androidTestCompile'已过时并且已经   替换为“ androidTestImplementation”。它将在   于2018年底。有关更多信息,请参阅:   http://d.android.com/r/tools/update-dependency-configurations.html   受影响的模块:android-app

     

警告:指定的Android SDK Build Tools版本(26.0.2)为   被忽略,因为它低于最低支持的版本(28.0.3)   Android Gradle插件3.3.1。 Android SDK Build Tools 28.0.3将   用过的。要取消显示此警告,请删除“ buildToolsVersion '26 .0.2'”   从您的build.gradle文件,作为每个版本的Android Gradle   插件现在具有构建工具的默认版本。删除构建   工具版本和同步项目受影响的模块:android-app

我的android-app文件:

"5"

我的android文件:

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

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"
    defaultConfig {
        applicationId "fr.curie.jonquille.jonquille_curie"
        minSdkVersion 18
        targetSdkVersion 26
        versionCode 203000
        versionName "2.3.0"
        multiDexEnabled true
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
    }
    dexOptions {
        javaMaxHeapSize "4g"
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    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:$kotlin_version"
    compile 'com.android.support:appcompat-v7:26.0.1'
    compile 'com.android.support:support-v4:26.0.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-beta4'
    compile 'com.android.support:design:26.0.1'
    compile 'com.google.android.gms:play-services-maps:10.0.1'
    compile 'com.google.android.gms:play-services:10.0.1'
    compile 'uk.co.chrisjenx:calligraphy:2.2.0'
    compile 'io.reactivex:rxandroid:1.2.1'
    compile 'io.reactivex:rxjava:1.2.4'
    compile 'io.reactivex:rxkotlin:0.60.0'
    compile 'com.jakewharton.rxbinding:rxbinding-kotlin:1.0.0'
    compile 'com.jakewharton.rxbinding:rxbinding-support-v4-kotlin:1.0.0'
    compile 'com.jakewharton.rxbinding:rxbinding-appcompat-v7-kotlin:1.0.0'
    compile 'com.jakewharton.rxbinding:rxbinding-design-kotlin:1.0.0'
    compile 'com.jakewharton.rxbinding:rxbinding-recyclerview-v7-kotlin:1.0.0'
    compile 'com.tbruyelle.rxpermissions:rxpermissions:0.9.1@aar'
    compile 'pl.charmas.android:android-reactive-location:0.10@aar'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.sdoward:rxgooglemaps:1.1.1@aar'
    compile 'com.github.kittinunf.fuel:fuel:1.3.1'
    compile 'com.github.kittinunf.fuel:fuel-android:1.3.1'
    compile 'com.github.kittinunf.fuel:fuel-rxjava:1.3.1'
    compile 'com.android.support:multidex:1.0.1'
    compile 'com.google.android.gms:play-services-wallet:10.0.1'
    compile 'com.stripe:stripe-android:2.0.2'
    compile 'com.facebook.android:facebook-android-sdk:4.+'
    compile 'com.twitter.sdk.android:twitter-core:3.1.1'
    compile 'com.twitter.sdk.android:tweet-composer:3.1.1'
    testCompile 'junit:junit:4.12'
}
repositories {
    mavenCentral()
    maven {
        url 'https://maven.google.com/'
        name 'Google'
    }
}

1 个答案:

答案 0 :(得分:13)

该错误是由您的项目级文件中的Kotlin旧版本引起的,您可以将其更新为最新版本,如下所示:

buildToolsVersion "26.0.2"

关于您的警告:

  • 您应该从模块级别文件中删除显式构建工具版本(compile),因为新的Android Gradle插件已经选择了正确的构建工具以自动使用。
  • 您应该检出the link in the warnings并更新您的依赖项配置,例如将implementation替换为apifunction add() { var divApp = document.getElementById("app"); var inputElement = document.createElement("input"); divApp.appendChild(inputElement); },依此类推。