【问题标题】:Failed to resolve: com.android.support:appcompat-v7:27.+ (Dependency Error) [duplicate]无法解决:com.android.support:appcompat-v7:27.+(依赖错误)[重复]
【发布时间】:2023-03-16 00:40:01
【问题描述】:

我在 Android Studio 中遇到了这个问题。

Error:Failed to resolve: com.android.support:appcompat-v7:27.+
<a href="install.m2.repo">Install Repository and sync project</a><br><a href="open.dependency.in.project.structure">Show in Project Structure 
dialog</a>

我的 Android Studio 充满错误 android studio 无法识别库。整个画面是这样的。

这是我的Gradle 代码:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    buildToolsVersion "27.0.1"

    defaultConfig {
        applicationId "com.example.hp.temp"
        minSdkVersion 21
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:27.+'
}

【问题讨论】:

  • 您是否尝试过安装存储库和同步项目?
  • 如果你住在伊朗等一些国家,很遗憾google不支持你的gradle,所以你必须使用vpn来获取gradle依赖。
  • 实际上这个答案不应该被标记为重复,因为解决方案的技术要求与源答案不同。
  • 在项目 build.gradle 的 jcenter() 之后添加 maven { url "maven.google.com" }

标签: android android-studio android-gradle-plugin


【解决方案1】:

找到根build.gradle文件并在allprojects标签内添加google maven repo

repositories {
        mavenLocal()
        mavenCentral()
        maven {                                  // <-- Add this
            url 'https://maven.google.com/' 
            name 'Google'
        }
    } 

最好使用特定版本而不是可变版本

compile 'com.android.support:appcompat-v7:27.0.0'

如果您使用 Android Plugin for Gradle 3.0.0 或更高版本

repositories {
      mavenLocal()
      mavenCentral()
      google()        //---> Add this
} 

并以这种方式注入依赖:

implementation 'com.android.support:appcompat-v7:27.0.0'

【讨论】:

  • implementation 'com.android.support:appcompat-v7:27.0.0' 我如何决定指定哪个版本?仍然给出 dex 错误。 v7:27.0.1v7:27.0.2
  • 我总是喜欢使用最新版本,当前最新的是27.0.2,如果遇到dex错误,请启用multidex。
  • Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'. &gt; com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex 不断收到此错误。我做了很多修复,但没有任何帮助。此外,当我设置CompileSdkVersion 26 时,它会编译但手机中的应用程序会崩溃。我也启用了multidex支持,还是同样的问题。
  • @RahulParasha 用完整的build.gradle android 模块文件提出一个新问题,但我不知道你注入的所有库,我帮不了你。
  • @Aryan 我发现除了上面的答案之外,在项目 gradle 的“allprojects”中还包含“google()”将完成构建
【解决方案2】:

如果您使用的是 Android Studio 3.0 或更高版本,请确保您的项目 build.gradle 的内容应类似于-

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

    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

注意- 位置真的很重要,在 jcenter()

之前添加 google()

对于低于 Android Studio 3.0 并从 支持库 26.+ 开始,您的项目 build.gradle 必须如下所示-

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
}

查看以下链接了解更多详情-

1- Building Android Apps

2- Add Build Dependencies

3- Configure Your Build

【讨论】:

  • 谷歌必须在jcenter之前设置,和你一样,否则错误会继续出现
  • 正确的@Ben-J 位置真的很重要:)
  • 将 google 放在 jcenter 之前为我解决了问题!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多