无法通过新项目从 jcenter 获取依赖项[关闭]

Posted

技术标签:

【中文标题】无法通过新项目从 jcenter 获取依赖项[关闭]【英文标题】:Unable to get dependencies from jcenter with a new project [closed] 【发布时间】:2019-08-12 01:30:31 【问题描述】:

我无法通过新项目从 jcenter 获取 kotlin pom。

我所做的只是文件->新建项目并创建了一个没有任何活动的新项目。

我在尝试构建时收到以下错误:

ERROR: Could not GET 'https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.21/kotlin-stdlib-jdk8-1.3.21.pom'. Received status code 502 from server: Bad Gateway Enable Gradle 'offline mode' and sync project

我的 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.android.tools.build:gradle:3.3.2'

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


allprojects 
    repositories 
        google()
        jcenter()

    


task clean(type: Delete) 
    delete rootProject.buildDir

如果我在网络浏览器中访问该 URL,我也无法连接。 https://jcenter.bintray.com/

这是否意味着站点暂时关闭,或者我需要在构建文件中添加什么内容?

顺便说一句,我为项目选择了 Java,而不是设置 Kotlin,如果这很重要的话,甚至不确定它为什么要尝试获取 kotlin 的东西。

【问题讨论】:

我也遇到过这种情况,觉得很奇怪。由于我不是唯一一个,我认为这可能是暂时的 也许我们还不应该将 gradle 升级到 3.3.2 【参考方案1】:

jcenter 当前已关闭。最后将mavenCentral() 添加到项目 build.gradle 文件中的两组存储库对我来说是一种解决方法:

buildscript 
    repositories 
        mavenCentral()
        google()
        jcenter()

...

allprojects 
    repositories 
        mavenCentral() 
        google() 
        jcenter()

...

【讨论】:

不适合我。 @MateenSheikh ,你还会遇到同样的错误吗?你的构建文件是什么样的? @user8810083 jcenter 现在工作正常,因此问题已解决。【参考方案2】:

降级 Gradle 版本对我来说不是一个好的修复方法。我做了谷歌,发现了这个。 Jcenter已经死了。暂时。

https://status.bintray.com/?fbclid=IwAR3NLsnuGA5xqbFhcPsVLWX2c9TG40JWQcDYM7RTVsDm0qDSQvfjmhabhPg

我想我们能做的就是等待。

【讨论】:

查看我刚刚发布的答案。现在只需将 mavenCentral() 添加到两组存储库中就可以了 服务器坏了!我全新安装了 android studio,但无法创建新项目 @Benjamin,将 mavenCentral 添加为存储库是目前的一种解决方法【参考方案3】:

虽然主要是作为临时的、在 jcenter-is-working 时再次更改的解决方案,但可以通过在项目的 gradle 文件中将 gradle 插件版本降级到 3.3.1 来解决此问题:

classpath 'com.android.tools.build:gradle:3.3.1'

【讨论】:

@Chisko 我仍然遇到与 OP 相同的错误 这对我不起作用,但请参阅我刚刚发布的答案。现在只需将 mavenCentral() 添加到两组存储库中就可以了 这给了我一个读取超时错误。【参考方案4】:

用 mavenCentral() 替换 jcenter() 因为 jcenter 现在不可用了

【讨论】:

【参考方案5】:

Downloads 部分存在问题,Partial Outage 在 jfrog bintray (https://status.bintray.com/incidents/2wvx6d5f807c) 中:

Bintray 中的间歇性下载问题

您可以在https://status.bintray.com/查看当前状态


从 jfrog Bintray 更新状态:

Update - There are still intermittent download issues in Oregon region (north America). We are still working on identifying the root cause. 
Mar 21, 10:02 UTC

【讨论】:

【参考方案6】:

将此添加到dependencies

classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.21"

【讨论】:

也许 OP 不需要 Kotlin 支持【参考方案7】:

其实 android studio 已经为你准备好了解决方案:

仅同步活动变体 您可以从以下位置禁用此实验性功能 文件 → 设置 → 实验 → Gradle → 仅同步活动变体

【讨论】:

【参考方案8】:

要修复它,请打开 android sdk 管理器并:

1.卸载android支持库 2.再次安装android支持库 3.clean项目并重建它

【讨论】:

【参考方案9】:

3 天后,我仍然收到来自 bintray 的随机 502 错误,因为链接似乎完全有效。使用浏览器手动检查 / curl 的 pom 文件。

最终帮助解决的问题是通过不让它同时点击所有链接来减慢 gradle。就我而言,cordova/ionic 项目,所以

ionic cordova run android -- -- --gradleArg=--max-workers=1

传递--no-parallel 应该也可以

【讨论】:

以上是关于无法通过新项目从 jcenter 获取依赖项[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

获取使用未声明的依赖关系[关闭]

无法获取项目引用的依赖项

Android获取项目依赖库

无法从 GitHub NPM 注册表 (npm.pkg.github.com) 通过 yarn 下载依赖项

检查您的模块类路径是不是存在缺失或冲突的依赖项[关闭]

无法从 eclipse 项目构建路径中的 apache ivy 依赖项导入类