我已经提到了this线程,但是它不能解决我的问题。
我不断收到错误消息:
ERROR: Failed to resolve: com.android.support:appcompat-v7:29.0.1
每当我尝试刷新Gradle时,都会在Android Studio中访问。
这是我的build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 29
buildToolsVersion "29.0.1"
defaultConfig {
applicationId "com.application.app"
minSdkVersion 14
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:29.0.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
该如何解决?还有一个网站列出了所有android模块的所有版本?我找不到自己。
谢谢。
答案 0 :(得分:3)
发生这种情况是因为com.android.support:appcompat-v7:29.x.x
不存在。
您可以在官方文档中查看revision history。
您可以:
注意:随着Android 9.0(API级别28)的发布,Jetpack包含了一个新版本的支持库AndroidX。 AndroidX库包含现有的支持库,还包含最新的Jetpack组件。
您可以继续使用支持库。历史工件(那些版本为27和更低版本,并打包为android.support。*的工件)将在Google Maven上可用。但是,所有新的库开发都将在AndroidX库中进行。
我们建议在所有新项目中使用AndroidX库。您还应该考虑将现有项目也迁移到AndroidX。
答案 1 :(得分:2)
29个支持库都没有,您必须使用androidx
支持库软件包进行新开发
来自Docs
这是Support Library 28.0.0的稳定版本,适用于 用于生产。这将是 android.support打包,鼓励开发人员迁移到 AndroidX。
答案 2 :(得分:1)
我建议您迁移到AndroidX
转到重构> 迁移到AndroidX > 迁移
com.android.support:appcompat-v7:29.0.1
不存在
答案 3 :(得分:0)
替换 implementation 'com.android.support:appcompat-v7:29.0.1'
使用 implementation 'androidx.appcompat:appcompat:1.0.2'
答案 4 :(得分:0)
将此用于您的 build.gradle (:app)
放在之前:
dependencies {
这个 hack 解决了我的问题:
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '28.0.0'
}
}
}
}
答案 5 :(得分:-1)
///将现有项目迁移到AndroidX
// @链接:: https://developer.android.com/topic/libraries/support-library/packages
随着Android 9.0(API级别28)的发布,有一个名为AndroidX的支持库的新版本,它是Jetpack的一部分。 AndroidX库包含现有的支持库,还包含最新的Jetpack组件。
所有新项目中的AndroidX库。您还应该考虑将现有项目也迁移到AndroidX。
Android Studio
去重构>>重构>> migarat到AndroidX
下表列出了从旧的支持库软件包到新的androidx软件包的当前映射。
@link https://developer.android.com/jetpack/androidx/migrate/class-mappings @link https://developer.android.com/jetpack/androidx/migrate/artifact-mappings
AndroidX库的每个版本在开发时都会通过四个发行渠道。
@link https://developer.android.com/jetpack/androidx/versions/all-channel