【问题标题】:Could not resolve io.fabric.tools:gradle:1.+无法解析 io.fabric.tools:gradle:1.+
【发布时间】:2017-11-03 06:50:18
【问题描述】:

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

我尝试了一些在 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


【解决方案1】:

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

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

【讨论】:

  • 我应该在 Android Studio 或 Gradle 属性文件中指定代理设置的位置
  • 我猜都是。但在你的情况下,它可能是 Gradle 丢失的地方。您还可以通过尝试从命令行执行构建来验证这一点。
  • 我不在代理后面?
  • 当我没有连接到互联网时,这发生在我身上。修复网络为我解决了这个问题。
【解决方案2】:

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

将以下内容添加到 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 是最新版本。在我的情况下,VVV 是 1.31.2

将此添加到清单中

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

其中 xxxxxxxxxxxxxxxx 是您获得的值。

将此添加到您的启动器类。

Fabric.with(this, Crashlytics())

重建项目,一切顺利。

【讨论】:

【解决方案3】:

嗯,先把这些添加到 gradle.properties(Project 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

然后到File -> Settings -> Appearance & Behavior -> System Settings -> HTTP Proxy,选择Manual Proxy Configuration,选择HTTP,输入Host name,输入Port number,选择Proxy authentication,输入login(your proxy username ),输入密码(您的代理密码),(注意您可以选择检查连接)然后应用并确定。完成!!!

【讨论】:

  • 尝试设置两个选项,但仍然出现相同的错误。
【解决方案4】:

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

Latest Fabric Gradle Plugin

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

在依赖项中使用 + 可以让您自动选择最新的可用版本,而不是特定的命名版本。但是,不建议这样做;您的构建不可重复;您可能使用与构建服务器使用的版本略有不同的版本进行了测试。 (使用动态版本作为主要版本号比在次要版本位置使用更成问题。)

【讨论】:

    【解决方案5】:

    这个错误:

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

    在选项“离线工作”选项中,位于设置 - >构建,执行,部署 - > gradle->全局Gradle Settings 中。

    要解决问题,你必须改变:

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

    收件人:io.fabric.tools:gradle: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' 
    }
    

    我希望它可以帮助别人。

    【讨论】:

      【解决方案6】:

      面临同样的问题,通过将结构 gradle 升级到最新版本来解决。下面是代码,

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

      【讨论】:

        【解决方案7】:

        像这样编辑项目 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
        }
        

        【讨论】:

          【解决方案8】:

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

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

          您可以在以后随时轻松禁用/启用离线支持。

          请检查以下内容

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

          【讨论】:

            【解决方案9】:
                *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'
            }
            

            【讨论】:

              【解决方案10】:

              我遇到了同样的问题,请确保您按照以下步骤操作,以便成功安装 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'
              

              添加所有这些之后,它终于对我有用。希望能帮助到你。干杯

              【讨论】:

                【解决方案11】:

                这可能是因为该域被https://github.com/notracking/hosts-blocklists 列入黑名单,它使用各种来源收集黑名单https://github.com/notracking/hosts-blocklists/blob/master/SOURCES.md

                作为一种解决方法,您可以覆盖列入黑名单的条目(dnsmasq 示例)

                # conf-file=/etc/dnsmasq/blocked_domains.txt
                address=/fabric.io/50.19.118.60
                address=/maven.fabric.io/99.86.238.75
                

                IP 地址可能会改变。你必须自己检查。

                或者在 build.gradle 中使用 IP 代替主机名

                【讨论】:

                  【解决方案12】:

                  我 尝试添加 maven repo url 但没有用,问题是 Firebase Crashlytics 已决定将其依赖项名称从

                  io.fabric.tools:gradle
                  

                  com.google.firebase:firebase-crashlytics-gradle
                  

                  Firebase 收购 Fabric。

                  所以不是

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

                  使用

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

                  也改变了

                  apply plugin: 'io.fabric'
                  

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

                  参考文献

                  【讨论】:

                    【解决方案13】:

                    2021 解决方案:如果您迄今为止遇到同样的问题,那是因为 ISP 阻止了 maven fata。如果你想检查点击这个网址http://maven.fabric.io/public/io/fabric/tools/gradle/maven-metadata.xml

                    如果您遇到无法加载页面问题(任何其他错误都可以),然后尝试更改您的网络或代理,它会正常工作

                    【讨论】:

                      猜你喜欢
                      • 1970-01-01
                      • 2018-07-23
                      • 2020-08-27
                      • 2018-04-05
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 2019-04-24
                      • 2020-04-06
                      相关资源
                      最近更新 更多