当前位置: 首页 > 知识库问答 >
问题:

无法获取播放服务位置/maven-metadata.xml。收到状态代码502从服务器:坏网关

阎嘉荣
2023-03-14

我有一个项目昨天运行良好,但今天我发现这个问题:

无法解析配置“:app:debugRuntimeClasspath”的所有文件。无法解析com.google.Androidgms:播放服务位置:16。所需人员:项目:应用程序

我使用的是classpath'com.Android工具。构建:渐变:4.1.0'distributionUrl=https://services.gradle.org/distributions/gradle-6.5-bin.zip我已经回答了这个问题,并升级了'com.Android工具。构建:gradle:4.1.0'到classpath'com.Android工具。构建:gradle:4.2.0'然后我更改了distributionUrl=https://services.gradle.org/distributions/gradle-6.5-bin.ziptodistributionUrl=https\://服务。格拉德尔。org/distributions/gradle-6.7.1-all。zip但我仍然收到了错误。

我的android/build。格拉德尔:

buildscript {
    repositories {
        google()
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:4.2.0'
    }
}

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

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

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

和格拉德尔包装。特性:

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

此外,我还将compileSdkVersion、minSdkVersion和targetSdkVersion更改为30,但什么也没发生。

共有3个答案

仲孙鸣
2023-03-14

如果您在位置颤振包下的播放服务位置遇到此问题,您可以继续下一个解决方案:

  1. 存储库位置执行分叉操作
  2. 在分叉项目中进行更改。(您可以在此提交中检查的所有更改)
  3. promise吧。推它
  4. 在项目中,更改从分叉库获取依赖项的方式
  location:
    git:
      url: git://github.com/dreambitio/flutterlocation.git
      ref: release/3.2.4
      path: location/

>

  • 如果版本3.2.4适用于您,您可以使用步骤4

    假设此方案适用于任何其他库。Fork-

    是的,这不是一个好的解决方案,但应该允许您在本地或使用任何CI工具进行操作。

  • 丌官浩旷
    2023-03-14

    问题是插件(在这种情况下是位置)没有指定Android库的固定版本。所以为了找到哪些版本可用,Gradle必须去仓库检查。在这种情况下,该存储库是Bintray,它已关闭数日,并返回HTTP 502坏请求

    下面的步骤提供了一个快速和肮脏的解决方案,因此您可以在Bintray关闭时构建应用程序。一个更合适的解决方案是根据Eldar Miensutov的建议,分叉插件并对分叉进行更改,但对于临时服务器错误来说,这可能有点过分。

    1. 在Project工具窗口(其中列出了您的文件)中,向下滚动,直到找到Flutter Plugins。如果您没有看到它,请确保在项目工具窗口顶部的下拉列表中选择了Project
    2. 打开Flutter插件,找到loction-4.0.0并打开它(您可能在location-之后有不同的版本号,这很好)。
    3. 打开文件loction-4.0.0/android/build.gradle
    4. 查找行api'com.google.android.gms: play-services-place: 16.'
    5. 将其更改为api'com.google.android.gms: play-services-place: 16.0.0'。如果您的编辑器说该文件不属于您的项目,请选择我想无论如何编辑此文件

    您现在应该可以构建应用程序了。

    这个更改当然是一个临时解决方案,如果您更新位置插件,您的更改将被覆盖。但至少在Bintray再次上线之前(或者直到您有时间迁移到另一个最近更新的插件之前),您将能够进行构建。

    如果问题是由位置插件引起的,并且您能够更新到它的最新版本(4.3.0),那么这似乎也解决了问题。在我的例子中,我被一个旧版本的flatter和location卡住了,因为其他一些包与flatter2不兼容。

    郭思淼
    2023-03-14

    这看起来像是一个临时问题,带有这些库的服务器已经关闭。我现在对Room有同样的问题:

    Could not GET 'https://google.bintray.com/exoplayer/androidx/room/room-common/maven-metadata.xml'. Received status code 502 from server: Bad Gateway
    

    如果您使用的是Android Studio,则可以尝试使用脱机模式,如果您有此库,则它将使用该库的缓存版本,直到修复为止。

    UPD。我切换到一个alpha版本的flutter lib,导致了这个(工作管理器),它现在工作得很好。据我所知,这取决于旧版本的Android Room库,因为Bintray不可用,所以不再可用。新版本的房间是可用的,因为它正在下载另一个链接。因此,对您来说,解决方案可能是更新到Flutter位置包的新版本,或者分叉它,并将play-services-place版本更改为最新版本。

     类似资料:
    • 嗨,我正在尝试构建我的颤振应用程序(调试/发布)。直到昨天,一切都很好,但从今天早上开始,如果我构建我的应用程序(调试/发布),我将面临以下异常 以下是我的颤振和飞镖版本: 颤振2.5.3 位置插件: gradle中的分发URL。特性: 项目级梯度:

    • 当我尝试构建颤振应用程序时,我面临的问题是: 无法确定任务“:app:compiledBugJavaWithJavaC”的依赖项。 无法解决配置的所有任务依赖关系: app: dedegCompileClasspath。无法解决com.google.android.gms: play-services-place: 16.所需:项目:应用程序 我什么都试过了,但都没用: 1-我有一个稳定的互联网连

    • 在我的项目中将Android Studio更新为最新版本(3.1)和gradle版本后,我收到一个错误(链接总是不同的): Android Studio版本: 我已经尝试了清洁重建和更新gradle,重启Android Studio和PC,但没有成功。有什么想法吗? 附言:我当然有互联网。此外,如果您在浏览器中打开链接,文件将被下载。

    • 在通过eclipse上传应用程序后,我收到了502坏网关错误,我不明白为什么会发生这种情况? 我通过AWS弹性豆茎控制台创建了一个示例应用程序。然后我在eclipse中加载了服务器。之后我发布了它,并在EB控制台中获得了“环境更新成功完成”的消息。然而,当我转到网址时,我得到一个502坏网关错误。我看了日志,看看出了什么问题,但我唯一发现的是 连接到上游时失败(111:连接被拒绝),客户端:172

    • 我得到一个授权错误时使用mapbox在反应本机 https://api.mapbox.com/downloads/v1/navigation/android/maven/com/mapbox/navigation/ui/1.5.0/ui-1.5.0.pom'. 从服务器收到状态代码401:未经授权 我正在使用的包(https://www.npmjs.com/package/@home e/reac