未能解决依赖项:com.google.android:flexbox:1.1.0。

21

所以我正在尝试同步一个Android Studio项目,但是Flexbox一直无法解析。据我所知,所有相关的存储库都已包含在内。我已经尝试了多个互联网连接(没有代理),但无济于事。

我也尝试了不同版本的Flexbox。

这是我的app build.gradle:

buildscript {
    repositories {
        jcenter()
        maven { url 'https://maven.google.com' }
        maven { url 'https://maven.fabric.io/public' }

    }
    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}

allprojects {
    repositories {
        flatDir {
            dirs 'libs'
        }
        maven { url "https://jitpack.io" }
    }
}

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'org.jetbrains.kotlin.android.extensions'
androidExtensions {
    experimental = true
}
apply plugin: 'io.fabric'
apply plugin: 'jacoco'

repositories {
    google()
    jcenter()
    maven { url 'https://maven.fabric.io/public' }
    maven { url 'https://maven.google.com' }
    mavenCentral()
}

所有其他谷歌依赖项都已下载并安装,似乎在gradle同步期间flexbox确实已经下载了,但之后总是失败。我真的不知道是什么原因导致这种情况。我已经完全删除了Android Studio(包括Gradle文件、sdk文件、偏好设置等),重新安装,但这个错误仍然一直出现。我真的很茫然。

该依赖项列在:

implementation 'com.google.android:flexbox:1.1.0'

编辑:在尝试同步时,我成功地截图了Android Studio底部的状态栏,以查看正在进行的操作时,看到'flexbox'闪烁:

Android Studio状态栏的截屏 当我尝试在浏览器中访问此URL时,收到404错误。

这是否是正确的存储库?


1
此问题与此处发布的问题有关:https://dev59.com/LVQJ5IYBdhLWcg3wg2JP - Mike
4个回答

44

谢谢你,Volker!看起来被接受的答案现在已经过时了,这个应该被推到最前面。 - gregko
5
如果您直接在项目中使用flexbox,那么这可以解决问题,但是我有一个依赖于flexbox 2.0.1的库,而我没有该库的源代码来升级它。 - AaA
@AaA,你能修复Flexbox 2.0.1的问题吗?我遇到了同样的情况。 - Vinithius
不是这样的!我很幸运,因为库的所有者自己更新了库,否则我打算从我的代码中删除他们的库。 - AaA

15

已弃用

将此添加到您的gradle文件中

maven {
    url "https://google.bintray.com/flexbox-layout" }

更新

感谢@Volker Voecking的回答。

dependencies {
    implementation 'com.google.android.flexbox:flexbox:3.0.0'
}

2
此答案在升级到Gradle 7(或更高版本)后已不再有效。请查看@Volker Voecking的答案。 - gregko

7

对于那些想要解决第三方库依赖问题的人

试着将以下内容放入你的项目级别 gradle 文件中:

allprojects {

    dependencies{
        modules {
            module("com.google.android:flexbox") {
                replacedBy("com.google.android.flexbox:flexbox")
            }
        }
    }
}

就我的情况而言,独自依靠Volker Voecking的解决方案是行不通的,没有这个是不行的。嗯,很奇怪... - undefined

2

1
当你刚刚修复了一个无关的错误时,这些巧合发生起来真是让人恼火。 - Chris

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