无法解析: com.android.support:appcompat-v7:28.0

47
在我的项目的build.gradle模块中使用com.android.support:appcompat-v7:28.+时,它可以正常工作而没有任何错误。但是当我只使用com.android.support:appcompat-v7:28,没有.+时,它会给出以下错误:

无法解析:com.android.support:appcompat-v7:28.0

我之前尝试了添加maven,但结果仍然相同。有什么解决方法吗?
9个回答

56

28.0.0 是支持库的最终版本。Android已经迁移到了AndroidX。要使用最新的Android库,请迁移到AndroidX。


编辑: 版本28.0.0-rc0228.0.0现在可用。

我在Google Maven上没有看到任何版本为28.0的内容,只有28.0.0-alpha128.0.0-alpha3。请将其更改为其中一个版本或以前的版本,即带有.+的版本,这意味着任何28主要发布版下的版本均可。

对于alpha版本的appcompat,28.+更合适。


4
更新Android Studio后,我今天又遇到了同样的错误。有更新吗? - Abdul Waheed
8
我已经и®ңзҢ®дғ†implementation 'com.android.support:appcompat-v7:28.0.0'пәЊдҢ†ж€‘д»Қ然遇到无法и§Әе†і com.android.support:appcompat-v7:28.0.0. й”™иҮҮгЂ‚ - Ghasem
1
请确保在 android/build.gradle 中的 repositories 中添加了 google() - Sourabh

34
在build.gradle(项目)中添加以下代码以添加Google Maven仓库。
allprojects {
    repositories {
    ...
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    ...
    }
}

但是这里明确指出,如果您的Gradle版本低于4.1,则应使用此选项。 - Ghasem

20
一些仍然可能遇到问题的人(对于伊朗和所有受制裁的国家),这个错误可以通过代理来解决。我在Android Studio 3.2中使用了这个免费代理,https://github.com/freedomofdevelopers/fod,只需进入设置(Ctrl + Alt + S)并搜索HTTP代理,然后勾选手动配置代理,然后添加fodev.org作为主机名8118作为端口号

Android Studio中代理设置截图


13

正如@sourabh指出的那样,您可以在Google Maven链接中查看Google列出的软件包。

如果你和我一样,遇到了类似这种消息:Failed to resolve: com.android.support:appcompat-v7:28.0,可能是因为你升级了targetSdkVersion或者compileSdkVersion

基本上发生的事情是找不到软件包,就像消息所说的那样。如果您升级了SDK,请检查Google Maven以查看要升级到的新SDK版本的软件包可用版本。

我有以下依赖项(版本为27):

implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.android.support:recyclerview-v7:27.1.1'
implementation 'com.android.support:cardview-v7:27.1.1'
implementation 'com.android.support:support-v4:27.1.1'

我必须更改SDK版本和其余软件包的编号:

implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'com.android.support:cardview-v7:28.0.0'
implementation 'com.android.support:support-v4:28.0.0'

现在找到并下载了软件包。由于在撰写本文时,28版本的SDK只有一个可用的软件包28.0.0


对我来说,似乎只需添加“com.android.support:support-v4:28.0.0”,然后“com.android.support:appcompat-v7:28.0.0”就不再抱怨了。 - Jonas

4

运行

gradlew -q app:dependencies

它将移除错误的部分。

2

我的问题只是网络连接的问题。使用VPN解决了这个问题。


1

implementation 'com.android.support:appcompat-v7:28.0' implementation 'com.android.support:support-media-compat:28.0.0' implementation 'com.android.support:support-v4:28.0.0' 需要添加所有这些依赖。


感谢您提供这段代码片段,它可能会提供一些有限的、即时的帮助。一个适当的解释将极大地提高其长期价值,因为它可以展示为什么这是一个好的问题解决方案,并使其对未来读者有其他类似问题的人更有用。请[编辑]您的答案以添加一些解释,包括您所做的假设。 - Dwhitz

1

确保您的buildToolsVersion版本与您的app compact版本相符。

要查找已安装的compileSdkVersion和buildToolsVersion,请转到工具> SDK管理器。这将弹出一个窗口,允许您管理compileSdkVersion和buildToolsVersion。

要查看精确的版本细节,请确保选中“显示包详细信息”复选框。

android {
    compileSdkVersion 28
    buildToolsVersion "28.0.3" (HERE)
    defaultConfig {
        applicationId "com.example.truecitizenquiz"
        minSdkVersion 14
        targetSdkVersion 28
        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:28.0.0' (HERE)
    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
在 build.gradle 中,下面一行的版本应该相同。
implementation 'com.android.support:appcompat-v7:28.0.0-alpha1'
implementation 'com.android.support:design:28.0.0'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接