【问题标题】:How Can I fix Gradle sync failed "Plugin with id 'com.android.application' not found"?如何修复 Gradle 同步失败“未找到 id 为 'com.android.application' 的插件”?
【发布时间】:2017-11-02 08:22:01
【问题描述】:

我正在使用 Android studio 1.3.2、Java jdk1.8.0_111

我在 Android Studio 日志中找到 idea.log

org.gradle.tooling.BuildException: Could not run build action using Gradle distribution 

'https://services.gradle.org/distributions/gradle-3.3-all.zip'.

=

Caused by: org.gradle.internal.exceptions.LocationAwareException: Build file 'D:\Projects\SampleApplication\app\build.gradle' line: 1
   A problem occurred evaluating project ':app'.

应用程序build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.
allprojects {

repositories {
    mavenCentral()
}
}

buildscript {
repositories {
    mavenCentral()
}
dependencies {
    classpath 'com.android.tools.build:gradle:2.3.3'
}
}

ext {
   supportlib_version = '26.0.2'
   gps_version = '11.2.0'
 }

//Ensure that all dependencies use the same version of the Android Support 
  library
 subprojects {
project.configurations.all {
    resolutionStrategy.eachDependency { details ->
        if (details.requested.group == 'com.android.support'
                && !details.requested.name.contains('multidex')) {
            details.useVersion "$supportlib_version"
        }
        if (details.requested.group == 'com.google.android.gms'
                && !details.requested.name.contains('multidex')) {
            details.useVersion "$gps_version"
        }
    }
}
}

allprojects {
repositories {
    jcenter()
}
}

app\build.gradle

apply plugin: 'com.android.application'

android {
compileSdkVersion 26
buildToolsVersion '26.0.1'
defaultConfig {
    applicationId "com.myapp"
    minSdkVersion 16
    targetSdkVersion 26
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }

    //Optionally configure your OneSignal IDs below
    manifestPlaceholders = [manifestApplicationId: "${applicationId}",
                            onesignal_app_id: "",
                            onesignal_google_project_number: ""]
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
}
dexOptions {
    jumboMode true
}
 }

repositories {
   flatDir {
    dirs 'libs'
  }
maven {
    url "https://jitpack.io"
   }
   jcenter();
 }

  dependencies {
    compile 'com.devbrackets.android:exomedia:4.0.3' //TV
    compile 'com.cleveroad:audiovisualization:1.0.0' //Radio
    compile 'com.squareup.okhttp3:okhttp:3.3.1' //WC
    compile 'org.jsoup:jsoup:1.8.3'
    compile 'com.onesignal:OneSignal:[3.6.0,4.0.0)'
    compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.booking:rtlviewpager:1.0.1'
compile 'com.github.apg-mobile:android-round-textview:v0.0.3'
compile 'com.github.chrisbanes:PhotoView:1.3.0'

    compile 'com.google.code.gson:gson:2.8.0' //WC
    compile 'com.google.android.exoplayer:exoplayer:r2.4.3' //TV & Radio

     compile "com.android.support:cardview-v7:$supportlib_version"
    compile "com.android.support:appcompat-v7:$supportlib_version"
    compile "com.android.support:recyclerview-v7:$supportlib_version"
    compile "com.android.support:design:$supportlib_version"
    compile "com.android.support:support-v4:$supportlib_version"
    compile "com.android.support:support-core-utils:$supportlib_version"
    compile "com.android.support:support-media-compat:$supportlib_version"

    compile "com.google.android.gms:play-services-gcm:$gps_version"
    compile "com.google.android.gms:play-services-ads:$gps_version"
    compile "com.google.android.gms:play-services-maps:$gps_version"
    compile 'com.google.maps.android:android-maps-utils:0.5+'
    compile files('libs/YouTubeAndroidPlayerApi.jar')
    }

gradle-wrapper.properties

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip

对 mw 没有任何作用。我已经尝试了许多论坛中给出的许多解决方案

【问题讨论】:

  • 你需要更新你的 android studio 才能使用更新的 gradle wrapper

标签: java android android-studio gradle android-gradle-plugin


【解决方案1】:

您需要更新到 Android Studio 3.0 版

还要确保您在根 gradle.build 中添加了新的 repo

repositories {
    maven {
        url 'https://maven.google.com'
    }
}

您也可以使用更新的 gradle 包装器

repositories {
        maven {
            google()
        }
    }

如果您在 repo 中使用过数据绑定,请确保您已添加

android {
    ....
    dataBinding {
        enabled = true
    }
}

这是最好的方法。

在你的根级别 gradle.build 使用下面

buildscript {
    repositories {
        mavenCentral()
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        mavenCentral()
        jcenter()
        google()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

并在您的 gradle-wrapper.properties 文件中更改包装器版本,如下所示

distributionUrl=https\://services.gradle.org/distributions/gradle-4.2.1-all.zip

此外,在您的应用级别 build.gradle 中,请确保您使用的是 26 版本,如下所示

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"
    defaultConfig {
        applicationId "com.xxxx"
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        multidexenabled = true
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-19
    • 1970-01-01
    • 1970-01-01
    • 2019-01-02
    • 2020-02-17
    • 1970-01-01
    相关资源
    最近更新 更多