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
在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()
将 mavenCentral()
移到 jcenter()
上方。
对您的项目进行 clean/build。
注释掉jcenter()
通过将 mavenCentral()
移动到 jcenter()
之上,mavenCentral()
现在成为所有非 Google 工件的主要存储库。通过清理和构建,所有工件现在都移动到 mavenCentral()
。
我不得不查一下并尝试一下。在我删除 jcenter()
之后,我从一头雾水到能够再次为学校构建我的最终项目。
对于 koin,将组 ID 从 org.koin
更改为 io.insert-koin
- 后者发布在 maven central.
对于 chartboost,您可以使用以下存储库:
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 是一个很好的定位包的服务。
在项目文件夹树中找到所有 build.gradle
文件,打开它们并将 jcenter()
替换为 mavenCentral()
。它大部分时间对我有用。
希望对您有所帮助
- 转到 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
}
只需注释掉 jcenter() 就会有所帮助,
mavencentral() 已经高于 jcenter.
这可能会对某人有所帮助。
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
有趣的是,AndroidStudio 项目模板仍然将 jcenter() 的引用添加到 gradle,但是一旦项目尝试构建它,就会要求您将其删除。
我只是将它从 gradle 文件中删除,然后它就可以工作了。
我在使用 Android Studio Artic Fox Beta - 3
时遇到了同样的错误,但在将 Android Studio 更改为 Canary Build
之后错误消失了
我做的解决方案是更改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
}
所以这里有两个问题。
首先,我们需要在所有项目中将MavenCentral移到jCenter之上
其次,Android构建工具版本需要升级到4.2.0及以上。由于 Android 内部构建工具依赖项将转到 jCenter
依赖关系{
类路径("com.android.tools.build:gradle:4.2.0")
}
它应该有效
在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()
将 mavenCentral()
移到 jcenter()
上方。
对您的项目进行 clean/build。
注释掉jcenter()
通过将 mavenCentral()
移动到 jcenter()
之上,mavenCentral()
现在成为所有非 Google 工件的主要存储库。通过清理和构建,所有工件现在都移动到 mavenCentral()
。
我不得不查一下并尝试一下。在我删除 jcenter()
之后,我从一头雾水到能够再次为学校构建我的最终项目。
对于 koin,将组 ID 从 org.koin
更改为 io.insert-koin
- 后者发布在 maven central.
对于 chartboost,您可以使用以下存储库:
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 是一个很好的定位包的服务。
在项目文件夹树中找到所有 build.gradle
文件,打开它们并将 jcenter()
替换为 mavenCentral()
。它大部分时间对我有用。
希望对您有所帮助
- 转到 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
}
只需注释掉 jcenter() 就会有所帮助, mavencentral() 已经高于 jcenter.
这可能会对某人有所帮助。
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
有趣的是,AndroidStudio 项目模板仍然将 jcenter() 的引用添加到 gradle,但是一旦项目尝试构建它,就会要求您将其删除。
我只是将它从 gradle 文件中删除,然后它就可以工作了。
我在使用 Android Studio Artic Fox Beta - 3
时遇到了同样的错误,但在将 Android Studio 更改为 Canary Build
之后错误消失了
我做的解决方案是更改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
}
所以这里有两个问题。
首先,我们需要在所有项目中将MavenCentral移到jCenter之上
其次,Android构建工具版本需要升级到4.2.0及以上。由于 Android 内部构建工具依赖项将转到 jCenter
依赖关系{ 类路径("com.android.tools.build:gradle:4.2.0") }
它应该有效