无法解析io.fabric.tools:gradle:1.+

问题描述 投票:12回答:10

我在构建项目时遇到了问题。第一次建立。我在代理服务器后面,所有其他依赖项只下载了这个有问题。

我在SO上尝试了一些选项,但到目前为止没有运气。有人能给我一个如何解决这个问题的线索吗?

到目前为止我尝试的事情:

  • File -> Invalidate Cache/Restart -> Invalidate and Restart
  • crashlytics:2.5.5@aar更新为crashlytics:2.6.4@aar
  • 重启Android Studio
  • 我没有处于离线模式

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
    }
}

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
    }
}

错误:

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
android gradle crashlytics twitter-fabric
10个回答
11
投票

嗯,错误似乎很清楚。您无法通过HTTPS连接到任何一个回购。由于所有这些都不太可能,并且您已经说过您在代理服务器后面,请按照用户指南中的说明通过Gradle属性配置HTTPS代理,您应该没问题。

如果在Gradle端正确配置了代理,则代理可能会因某些情况阻止请求。在这种情况下,您可能应该询问该代理的维护者。


0
投票

我得到了这个问题,如果您不想再次重复此问题,我通过启用gradle离线支持解决了这个问题。

我建议你启用gradle离线支持,它将解决问题。

您可以在将来随时轻松禁用/启用脱机支持。

请检查以下内容

转到首选项> Gradle并选中/取消选中“脱机工作”。

Gradle Offline check/uncheck


13
投票

遇到了同样的问题。我通过安装android studio的最新结构插件来解决它。

将以下内容添加到build.gradle中。

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

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

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

将其添加到清单中

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

其中xxxxxxxxxxxxxxxx是您获得的值。

将其添加到启动器类。

Fabric.with(这个,Crashlytics())

重建项目,你很高兴。


6
投票

像这样编辑Project Gradle

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
}

4
投票

这个错误:

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

当选择“离线工作”选项时,会发生这种情况,该选项位于“设置” - >“构建”,“执行”,“部署” - >“平移” - >“全局平移”设置中。

要解决此问题,您必须更改:

来自:io.fabric.tools:grad:1.+

收件人:io.fabric.tools:grad:1.0

当您这样做时,Android Studio本身会警告您最新版本。在我的情况下它是:1.25.4。所以,就我而言,它是这样的:

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

我希望它可以帮助别人。


4
投票

面对同样的问题,解决了将Fabric gradle升级到最新版本的问题。下面是代码,

dependencies {
    classpath 'io.fabric.tools:gradle:1.25.4'
}

2
投票

我遇到了同样的问题,请确保您按照这些步骤操作,以便成功安装crashlytics:

1)在项目级别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)在你的应用程序级别gradle中

在文件的最开头添加:

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

并在依赖项块中添加:

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

添加完所有内容后,它终于为我工作了。希望能帮助到你。干杯


1
投票

好吧,首先将这些添加到gradle.properties(项目属性)

对于http使用:

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

对于https使用:

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

然后进入文件 - >设置 - >外观和行为 - >系统设置 - > HTTP代理,选择手动代理配置,选择HTTP,输入主机名,输入端口号,选择代理验证,输入登录(您的代理用户名),输入密码(您的代理密码),(注意您可以选择检查连接)然后应用并确定。完成!


1
投票

使用此链接查找最新的Fabric gradle插件

Latest Fabric Gradle Plugin

避免在版本号中使用+;会导致不可预测和不可重复的构建(io.fabric.tools:gradle:1.+)

使用+ in dependencies可以自动获取最新的可用版本,而不是特定的命名版本。但是,不建议这样做;你的构建不可重复;您可能已经使用与构建服务器使用的版本略有不同的版本进行了测试。 (使用动态版本作为主要版本号比在次要版本位置使用它更有问题。)


1
投票
    *Add the following in your project/build.gradle**
    buildscript {

    repositories {
        google()
        jcenter()
        maven {
            url 'https://maven.fabric.io/public'
        }
    }
    dependencies {

        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
    }
    }

**Add the following in your app/build.gradle**

 apply plugin: 'io.fabric'//on top 

   dependencies {
    //Crashlytics
   implementation 'com.crashlytics.sdk.android:crashlytics:2.9.9'
}
© www.soinside.com 2019 - 2024. All rights reserved.