Android Studio Gradle:请从您的构建脚本中删除 `jcenter()` Maven 存储库的使用/JCenter 已结束生命周期

Posted

技术标签:

【中文标题】Android Studio Gradle:请从您的构建脚本中删除 `jcenter()` Maven 存储库的使用/JCenter 已结束生命周期【英文标题】:Android Studio Gradle: Please remove usages of `jcenter()` Maven repository from your build scripts / JCenter is at end of life 【发布时间】:2021-07-28 18:29:48 【问题描述】:

android Studio 4.2 中有一个警告:

buildscript 
    ext.kotlin_version = '1.5.0'

    repositories 
        google()
        //jcenter()
        mavenCentral()
    
    dependencies 
        classpath 'com.android.tools.build:gradle:4.2.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    


allprojects 
    repositories 
        google()
        //jcenter()
        mavenCentral()
    

如果我删除jcenter(),那么它找不到我的应用项目的一些依赖项:

   > Could not find org.koin:koin-core:2.0.1.
     Required by:
         project :app
   > Could not find org.koin:koin-androidx-scope:2.0.1.
     Required by:
         project :app
   > Could not find org.koin:koin-androidx-viewmodel:2.0.1.
     Required by:
         project :app
   > Could not find com.google.ads.mediation:chartboost:8.1.0.0.
     Required by:
         project :app

代替jcenter(),我添加了mavenCentral()

【问题讨论】:

我猜你需要检查不同的缺失 JAR 的主页,看看你将来可能从哪里得到它们。 【参考方案1】:

mavenCentral()移到jcenter()上方。

对您的项目进行清理/构建。

注释掉jcenter()

通过将mavenCentral() 移到jcenter() 上方,mavenCentral() 现在成为所有非 Google 工件的主要存储库。通过清理和构建,所有工件现在都移至mavenCentral()

我不得不查找并尝试了它。删除jcenter() 后,我彻底摆脱了困境,现在能够再次为学校构建我的最终项目。

【讨论】:

仅供参考 - 截至 2021 年 6 月 22 日,我的 mavenCentral() 高于 jcenter() 但现在它警告您必须将其删除。我删除了 jcenter() 并重建,现在一切都很好。 在评论jcenter后清理项目。【参考方案2】:

对于 koin,将组 ID 从 org.koin 更改为 io.insert-koin - 后者发布在 maven Central 上。

对于 chartboost,您可以使用以下 repo:

maven 
    url "https://dl.bintray.com/google/mobile-ads-adapters-android/"

另请注意,还有更新的版本,例如 koin 2.2.2 / 3.0.1 和 chartboost 8.2.0.0。旧版本可能不会在非 jcenter 存储库中重新发布。

mvnrepository 是定位包裹的好服务。

【讨论】:

【参考方案3】:

只注释掉 jcenter() 会有所帮助, mavencentral() 已经在 jcenter 之上了。

【讨论】:

【参考方案4】:

在您的项目文件夹树中找到所有build.gradle 文件,打开它们并将jcenter() 替换为mavenCentral()。大多数时候它对我有用。

【讨论】:

【参考方案5】:

有趣的是,AndroidStudio 项目模板仍然将 jcenter() 的引用添加到 gradle,但是一旦项目尝试构建它,就会要求您将其删除。

我只是从 gradle 文件中删除它,然后它就可以工作了。

【讨论】:

【参考方案6】:

希望这会有所帮助

    转到 App/Gradle Scripts/build.gradle (项目:---) 在构建脚本和所有项目存储库中更改jcenter()。 并立即同步。

这是以前的样子。

buildscript 
    repositories 
        google()
        jcenter()
    
    dependencies 
        classpath 'com.android.tools.build:gradle:4.2.1'
    


allprojects 
    repositories 
        google()
        jcenter()
    


task clean(type: Delete) 
    delete rootProject.buildDir

之后。

  buildscript 
    repositories 
        google()
        mavencentral()
    
    dependencies 
        classpath 'com.android.tools.build:gradle:4.2.1'
    


allprojects 
    repositories 
        google()
        mavencentral()
    


task clean(type: Delete) 
    delete rootProject.buildDir

【讨论】:

问题不在于如何删除它。【参考方案7】:

这可能对某人有所帮助。

allprojects 
        repositories 
            ...
            maven  url "https://jitpack.io" 
            ...
        
    

我用这个来解决:

> Could not find com.github.parse-community.Parse-SDK-Android:parse:1.26.0.
     Required by:
         project :app

【讨论】:

【参考方案8】:

我在使用 Android Studio Artic Fox Beta - 3 时遇到了同样的错误,但在将 Android Studio 更改为 Canary Build 后,错误消失了

【讨论】:

【参考方案9】:

我所做的解决方案是更改 build:gradle 版本:

dependencies 
        classpath("com.android.tools.build:gradle:4.2.2")
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    

【讨论】:

【参考方案10】:

所以这里有两个问题。

    首先,我们需要在所有项目中将 MavenCentral 移到 jCenter 之上

    其次,Android构建工具版本需要升级到4.2.0及以上。由于 Android 内部构建工具依赖项将转到 jCenter

    依赖 类路径(“com.android.tools.build:gradle:4.2.0”)

它应该可以工作

【讨论】:

以上是关于Android Studio Gradle:请从您的构建脚本中删除 `jcenter()` Maven 存储库的使用/JCenter 已结束生命周期的主要内容,如果未能解决你的问题,请参考以下文章

错误“抱歉,我需要一个 wp-config-sample.php 文件才能使用。请从您的 WordPress 安装中重新上传此文件。”

android studio gradle怎么改低

android studio更新gradle在哪个目录下

android studio怎么设置gradle版本

如何建立与 Android studio和 gradle android 库

android studio怎样配置gradle本地路径