Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve com.google.android.gms:play-services-basement:[15.0.0,16.0.0)

跟風遠走 提交于 2019-12-04 02:57:36

问题


I am getting this error: Here is my build.gradle(Module:app)

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

android {
    compileSdkVersion 26
    defaultConfig {
        applicationId "com.mycompany.myapp"
        minSdkVersion 19
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    dataBinding.enabled = true
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:26.1.0'
    implementation 'com.google.firebase:firebase-core:15.0.0'
    compileOnly "org.projectlombok:lombok:1.16.20"
    annotationProcessor 'org.projectlombok:lombok:1.16.20'
    implementation 'com.android.support.constraint:constraint-layout:1.1.0'
    implementation 'com.google.code.gson:gson:2.8.1'
    implementation 'com.android.volley:volley:1.1.0'
    implementation 'com.android.support:design:26.1.0'
    implementation 'com.android.support:support-v4:26.1.0'
    implementation 'com.google.android.gms:play-services-maps:15.0.0'
    implementation 'com.google.android.gms:play-services-location:15.0.0'
    implementation 'com.google.android.gms:play-services-places:15.0.0'
    implementation 'com.paytm.pgsdk:pgsdk:1.0.8'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.1'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
    compile 'com.crashlytics.sdk.android:crashlytics:2.9.1'
}

apply plugin: 'com.google.gms.google-services'

and Here is my build.gradle(Project: myApp)

buildscript {

    repositories {
        google()
        jcenter()
        maven {
            url 'https://maven.fabric.io/public'
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
        classpath 'io.fabric.tools:gradle:1.25.1'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.google.gms:google-services:3.1.0'
    }
}

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

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

I have checked other solutions, most of them suggest to add

maven { url "https://maven.google.com" }

to build.gradle of project. I have already tried this but I am still getting same error.

I am on android studio 3.0. I have also tried adding google() instead of maven (another suggestion)


回答1:


Go to File -> Other Settings -> Default Settings -> Build, Execution, Deployment -> Build Tools -> Gradle ->

And uncheck Offline work option.




回答2:


I was using a VPN for internet connection. I closed VPN and it worked for me.




回答3:


If you have it declared as follows in project build.gradle

maven { url "https://jitpack.io" }

try changing to

maven { url "https://www.jitpack.io" }



回答4:


OPTION 1:

Follow the below instruction to resolve it.

Project-level build.gradle

use

maven { url "https://www.jitpack.io" }

instead of

maven { url "https://jitpack.io" }

OPTION 2:

Project-level build.gradle

google() repository should be 1st priority

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

OPTION 3:

Follow the below steps to resolve it.

Step1:

Project-level build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.google.gms:google-services:4.2.0' // google-services plugin
        classpath 'com.android.tools.build:gradle:3.4.2'

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

allprojects {
    repositories {
        maven { url "http://dl.bintray.com/populov/maven" }
        maven { url "https://jitpack.io" } // For Ucrop
        maven { url "https://maven.google.com" } // Google's Maven repository - FCM
        maven {
            url 'https://dl.bintray.com/azeesoft/maven'
        }
        google()
        jcenter()
        mavenCentral()
    }
}

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

Step2:

App-level build.gradle

I have update One Signal version.

use

implementation 'com.onesignal:OneSignal:3.11.1'

instead of

implementation 'com.onesignal:OneSignal:3.10.9' 



回答5:


I had the same issue while use OneSignal to handle push notifications in my android application.

The solution is to add the exclude clause to its' dependency:

implementation ('com.onesignal:OneSignal:3.8.3'){
    exclude group: 'com.google.android.gms'
}

in the app folder, then add any other missing dependency manually such as:

implementation 'com.google.android.gms:play-services-appinvite:16.1.0'

The problem is that OneSignal SDK contains Google Play Service dependency that are not of the same version with the latest version of gms and firesbase I used in the app.

So I suggest you figure out a dependency you added that uses google play service in the project and use the exclude clause on it. Though your gradle should build if your system is connected to the internet.

Hope this is helpful.




回答6:


Using the VPN solved my problem.




回答7:


I had this problem and I was using a proxy before. I figured out that my proxy is not working any more so i went to settings and changed the proxy config to Automatic but still the same error was being shown.

I finally found that the proxy was also automatically set to gradle as well but when I disabled it, it wasn't removed from my gradle config. so I went to C:Users/User/.gradle/gradle.properties and in that file there was something like this:

## For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
#enter code here
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx1024m -XX:MaxPermSize=256m
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
#
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
#Sat Aug 31 18:23:27 IRDT 2019
systemProp.https.proxyPort=8118
systemProp.http.proxyHost=fodev.org
systemProp.https.proxyHost=fodev.org
systemProp.http.proxyPort=8118

so I just edited this file and commented the last 4 lines and it solved my problem.

I am also using a VPN service.




回答8:


Have you tried adding this in your dependencies:

implementation 'com.google.android.gms:play-services-basement:15.0.0'




回答9:


Just Build -> Clean Project worked for me



来源:https://stackoverflow.com/questions/50822138/unable-to-resolve-dependency-for-appdebug-compileclasspath-could-not-resolv

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!