我在Android上处于最新级别。刚启动一个新项目,并在Gradle Build with Pie(Android v9.0)上出错:
无法解决以下方面的依赖性 ':app @ debugAndroidTest / compileClasspath':找不到任何版本 匹配com.android.support:appcompat-v7:29。+。
这是我的build.gradle (Module:app)
:
apply plugin: 'com.android.library'
android {
compileSdkVersion 29
defaultConfig {
minSdkVersion 28
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:29.+'
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'
}
下一步我该怎么做?
答案 0 :(得分:2)
您正在使用最近为API 28发布的支持库,但您正在尝试查找该库的API 29版本。该库的API 29版本已移至另一个名为AndroidX的库。
在Android Studio中转到菜单栏,依次选择“重构”和“迁移到AndroidX”,即可解决该问题。
这将用较新的AndroidX版本替换您正在使用的所有旧支持库软件包。 如果迁移后在依赖项中遇到任何错误,请从以下列表中找到依赖项包,并将其替换为表中列出的更新包:
答案 1 :(得分:1)
尝试迁移到Androidx
Android Studio > Refactor Menu > Migrate to AndroidX...
来自docs:
随着Android 9.0(API级别28)的发布,出现了一个新版本 支持库AndroidX的一部分,它是Jetpack的一部分。的 AndroidX库包含现有的支持库以及 包括最新的Jetpack组件。
您可以继续使用支持库。历史文物 (那些版本为27或更早版本,并打包为android.support。*) 仍可在Google Maven上使用。但是,所有新图书馆 开发将在AndroidX库中进行。
我们建议在所有新项目中使用AndroidX库。您 还应该考虑将现有项目迁移到AndroidX。