Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Could not resolve io.fabric.tools:gradle:1.+

I'm having an issue with building my project. First time build. I'm behind a proxy and all other dependencies downloaded only this having an issue.

I tried a few options found on SO, but had no luck so far. Can someone give me a clue on how to fix this?

Things I tried so far:

  • File -> Invalidate Cache/Restart -> Invalidate and Restart
  • updated the crashlytics:2.5.5@aar to crashlytics:2.6.4@aar
  • restarted Android Studio
  • I'm not in offline mode

app/build.gradle

buildscript {
    repositories {
        maven { url https://maven.fabric.io/public }
        mavenCentral()
        jcenter()
    }
}

apply plugin: 'io.fabric'

dependencies {
    compile("com.crashlytics.sdk.android:crashlytics:2.5.5@aar") {
        transitive = true
    }
}

Root build.gradle

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

Error:

Failed to list versions for io.fabric.tools:gradle.
  Unable to load Maven meta-data from https://maven.fabric.io/public/io/fabric/tools/gradle/maven-metadata.xml.
    Could not GET 'https://maven.fabric.io/public/io/fabric/tools/gradle/maven-metadata.xml'.
      Connect to maven.fabric.io:443 [maven.fabric.io/54.230.133.33] failed: Connection refused: connect
Could not resolve io.fabric.tools:gradle:1.+.
  Failed to list versions for io.fabric.tools:gradle.
    Unable to load Maven meta-data from https://jitpack.io/io/fabric/tools/gradle/maven-metadata.xml.
      Could not GET 'https://jitpack.io/io/fabric/tools/gradle/maven-metadata.xml'.
        Connect to jitpack.io:443 [jitpack.io/104.24.23.62, jitpack.io/104.24.22.62] failed: Connection refused: connect
Could not resolve io.fabric.tools:gradle:1.+.
  Failed to list versions for io.fabric.tools:gradle.
    Unable to load Maven meta-data from https://repo1.maven.org/maven2/io/fabric/tools/gradle/maven-metadata.xml.
      Could not GET 'https://repo1.maven.org/maven2/io/fabric/tools/gradle/maven-metadata.xml'.
        Connect to repo1.maven.org:443 [repo1.maven.org/151.101.24.209] failed: Connection refused: connect
Could not resolve io.fabric.tools:gradle:1.+.
  Failed to list versions for io.fabric.tools:gradle.
    Unable to load Maven meta-data from https://jcenter.bintray.com/io/fabric/tools/gradle/maven-metadata.xml.
      Could not GET 'https://jcenter.bintray.com/io/fabric/tools/gradle/maven-metadata.xml'.
        Connect to jcenter.bintray.com:443 [jcenter.bintray.com/75.126.118.188] failed: Connection refused: connect
like image 251
Sam Avatar asked Jun 02 '17 00:06

Sam


8 Answers

Came across the same issue. i resolve it by installing the latest fabric plugin for android studio.

Add the following to the build.gradle .

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }
    dependencies {

        classpath 'io.fabric.tools:gradle:VVV'
    }
}
apply plugin: 'io.fabric'

repositories {
    maven { url 'https://maven.fabric.io/public' }
}

WHERE VVV is the latest version. In my case VVV IS 1.31.2

Add this to the manifest

<meta-data
            android:name="io.fabric.ApiKey"
            android:value="xxxxxxxxxxxxxxxxxxxxxxx" />

where xxxxxxxxxxxxxxxx is your obtained value.

Add this to your launcher class.

Fabric.with(this, Crashlytics())

Rebuild project and you are good to go.

like image 71
Tandoh Anthony Nwi-Ackah Avatar answered Oct 14 '22 07:10

Tandoh Anthony Nwi-Ackah


Well, the error seems pretty clear. You cannot connect to either of the repos via HTTPS. As it is unlikely that all those are down and you already said you are behind a proxy, configure the HTTPS proxy via Gradle properties as described in the users guide and you should be fine.

If you proxy is configured properly on Gradle side, maybe the proxy blocks the requests due to some condition. In that case you should probably ask the maintainer of that proxy.

like image 31
Vampire Avatar answered Oct 14 '22 07:10

Vampire


Edit Project Gradle like this

buildscript {

repositories {
    google()
    jcenter()
    maven {
        url 'https://maven.fabric.io/public'
    }
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.4'
    classpath 'com.google.gms:google-services:3.3.0'
    classpath 'io.fabric.tools:gradle:1.25.4'


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

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

task clean(type: Delete) {
delete rootProject.buildDir
}
like image 45
Shahriar Nasim Nafi Avatar answered Oct 14 '22 05:10

Shahriar Nasim Nafi


I tried adding maven repo url but did not work, problem is that Firebase Crashlytics have decided to change their dependency name from

io.fabric.tools:gradle

to

com.google.firebase:firebase-crashlytics-gradle

with the aquisition of Fabric by Firebase.

So instead of

classpath "io.fabric.tools:gradle:1.25.4"

use

classpath 'com.google.firebase:firebase-crashlytics-gradle:2.1.0'

and also change the

apply plugin: 'io.fabric'

to

apply plugin: 'com.google.firebase.crashlytics'

References

  • https://firebase.google.com/docs/crashlytics/get-started?platform=android
like image 6
user158 Avatar answered Oct 14 '22 06:10

user158


This error:

Could not find any matches for io.fabric.tools:gradle:1.+ as no versions of io.fabric.tools:gradle are available.

happens when the option "Offline work", located in Settings->Build, Execution, Deployment->Gradle->Global Gradle settings is selected.

To solve the problem, you have to change:

From: io.fabric.tools:gradle:1.+

To: io.fabric.tools:gradle:1.0

When you do, Android Studio itself will warn you about the latest version. In my case it was: 1.25.4. So, in my case, it was like this:

dependencies { 
    classpath 'com.android.tools.build:gradle:3.2.0' 
    classpath 'io.fabric.tools:gradle:1.25.4' 
}

I hope it helps someone else.

like image 4
Jean Douglas Avatar answered Oct 14 '22 06:10

Jean Douglas


Faced the same issue, resolved with upgrading the fabric gradle to the latest version. Below is the code,

dependencies {
    classpath 'io.fabric.tools:gradle:1.25.4'
}
like image 4
Kavya Shravan Avatar answered Oct 14 '22 06:10

Kavya Shravan


I had the same problem, just make sure you follow these steps so crashlytics will be installed successfully:

1) add this in your project level gradle:

buildscript {
    repositories {
        google()
        maven { url 'https://maven.fabric.io/public' }
    }
    dependencies {
        classpath 'com.google.gms:google-services:4.2.0'
        classpath 'io.fabric.tools:gradle:1.27.1'
    }
}
allprojects {
    repositories {
        google()
        jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }
}

2) In your app level gradle

in the very beginning of the file add:

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

and in the dependencies block add:

implementation 'com.crashlytics.sdk.android:crashlytics:2.9.9'

After adding all of that, it has finally worked for me. Hope it helps. Cheers

like image 2
konnovdev Avatar answered Oct 14 '22 06:10

konnovdev


Well, first add these to gradle.properties(Project Properties)

For http use:

systemProp.http.proxyHost=your_proxy_host
systemProp.http.proxyPort=your_proxy_port
systemProp.http.proxyUser=your_proxy_username
systemProp.http.proxyPassword=your_proxy_password

For https use:

systemProp.https.proxyHost=your_proxy_host
systemProp.https.proxyPort=your_proxy_port
systemProp.https.proxyUser=your_proxy_username
systemProp.https.proxyPassword=your_proxy_password

Then got to File -> Settings -> Appearance & Behavior -> System Settings -> HTTP Proxy, select Manual Proxy Configuration, select HTTP, enter Host name, enter Port number, select Proxy authentication, enter login(your proxy username), enter password(your proxy password), (note you can optionally Check connection)then Apply and OK. Done!!!

like image 1
Makari Kevin Avatar answered Oct 14 '22 07:10

Makari Kevin