同步失败找不到约束布局: 1.0.0-alpha2

问题:

Error:Could not find com.android.support.constraint:constraint-layout:1.0.0-alpha2.
Required by:
myapp:app:unspecified

背景: Android Studio 2.2 P 1

154534 次浏览

修复方法是更新 build.gradle 中的 android gradle 插件。

这应该会奏效: Classspath‘ com.android.tools.build: gradle: 2.2.0-alpha2’类路径‘ com.android.tools.build: gradle: 2.2.0-alpha2’

或者你可以使用最新的: Classspath‘ com.android.tools.build: gradle: 2.2.0-alpha3’类路径‘ com.android.tools.build: gradle: 2.2.0-alpha3’

我更新了我的机器人级别插件到 2.2.0-alpha4和约束布局依赖到 1.0.0-alpha3,它似乎现在工作

我使用 com.android.Support.約束-布局: 1.0.0-alpha2和类路径‘ com.android.tools.build: gradle: 2.1.0’,它工作起来非常迷人。

com.android.tools.build:gradle:2.2.0-alpha6

约束布局依赖 com.android.support.constraint:constraint-layout:1.0.0-alpha4

我没问题

无法安装/更新 ConstraintLayout的支持库。

只要打开 Preferences > Appearance & Behavior > System Settings > Android,然后移到 SDK Tools选项卡。

Preferences

enter image description here

我尝试约束布局依赖更新可用1,和插件级 α-6,它工作

对我来说,这是一个完全不同的问题。当我在 SDK 工具中安装约束依赖关系时,这些工具以某种方式将它们写入 错了目录。就是这样

/home/${USER}/Android/Sdk/extras/+m2repository+/com/.../constraint

而不是

/home/${USER}/Android/Sdk/extras/+android+/+m2repository+/com/.../constraint

补救措施:

只需将 1.0.0-alpha*目录复制到后一个路径

不确定是否太晚了,但是如果有人在 SDK 工具上更新了 ConstraintLayout 和 Solver 之后仍然有错误,也许这个解决方案可以帮助: 错误: (30,13)未能解决: com.android.support. 約束: 約束-布局: 1.0.0-alpha4

在我的例子中,已经安装了 ConstraintLayout 的支持库,但是我在 build.gradle 文件中添加了不正确的 ConstraintLayout Library 版本。要查看已安装的版本,请转到 Preferences > Appearance & Behavior > System Settings > Android SDK。现在,单击右窗格中的 SDK Tools选项卡。检查显示包详细信息,并注意版本。

enter image description here

最后,您可以在 build.gradle文件中添加正确的版本

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha9'
testCompile 'junit:junit:4.12'
}

首先,我尝试了我在 stackoverflow 上读到的所有东西... ... 从更新 gradle 到 XY 版本,到更新 ConstraintLayout 到 XY 版本... ... 我甚至更新了我的 SDK 工具和 Android Studio 到最新版本... ... 但是什么都没用。

对我来说唯一有效的解决方案是从 gradle 和 SDK 中删除 ConstraintLayout 库,然后打开随机的 xml 布局,在 调色板节下的 设计视图中搜索 约束布局。如果您已经成功地从您的项目中删除了库,那么如果您双击 约束布局元素,您将能够从那里安装库。

这在我的应用程序 build.gradle 中创建了下一行:

'com.android.support.constraint:constraint-layout:1.0.0-beta1'

在我的项目 build. gradle 中,我有这个:

classpath 'com.android.tools.build:gradle:2.2.2'

Android 工作室版本2.2.2

在更新 SDK 工具时,出现了一个将要安装的 Constraint 布局版本的对话框。请注意,并根据这一点更新您的依赖项。对我来说,是安装 beta 3。

我改变了我的依赖关系,就像下面这样。在那之后,它起作用了。

编译‘ com.android.Support.約束: 約束-布局: 1.0.0-beta3’

我的问题是,SDK Tools 将它更新到了最新版本,在我的例子中是1.0.0-alpha9,但是在我的 gradle 依赖项被设置为

编译“ com.android.support. 約束: 約束-布局: 1.0.0-alpha8” 因此,您可以将分级构建文件更改为

编译‘ com.android.Support.約束: 約束-布局: 1.0.0-alpha9’ 或者在 SDK 工具编辑器中选择“显示包详细信息”并安装所需的版本。请看下面的屏幕。SDK 工具的映像

enter image description here

在我的例子中,我必须首先删除以前的版本,然后下载最新的版本。V1.0稳定版于2月23日发布。enter image description here

只是为了确保在工作室版本2.3中,您不会在 sdk 工具中看到约束布局附近的下拉列表,它将默认安装最新版本

要获得所需的版本选中框说显示软件包的细节和繁荣,你现在可以选择所需的版本,你想要安装

  1. 确保在模块级 build.gradle 文件中声明了 maven.google.com 存储库

    储存库{ 美文{ 网址 https://maven.google.com } }

2. 将库作为依赖项添加到同一 build.gradle 文件中:

dependencies {
compile 'com.android.support.constraint:constraint-layout:1.0.2'
}

在我的例子中,我有一个名为“ app”和“ sdk”的多模块项目。“ sdk”模块是我添加约束布局库的模块。当我试图将“ sdk”合并到一个名为“ app2”的新的多模块项目中时,出现了错误。解决方案是确保我已经将 Google Maven Repository 添加到“ app2”的项目级 build.gradle 文件中。Google Maven Repository 可以通过在项目级 build.gradle 文件的 allprojects.repositories下添加“ Google ()”:

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

在我的例子中,我使用的是 AS 2.3,我想使用当前最新的 ConstraintLayout 1.1.3,但是在我的参数 > 外观和行为 > 系统设置 > Android 中的最新版本是1.0。

为了使用 ConstraintLayout 1.1.3,我将我的 AS 从2.3更新到目前最新的3.2.1,com.android.tools.build: gradle 从2.2.2升级到3.2.1,gradle 从3.3升级到4.6,buildToolsVersion 从25.0.0升级到28.0。

我还向项目级 build.gradle 文件中的 Maven 存储库添加了 Maven { url‘ https://maven.google.com’} ,这解决了我的问题。

它可以在 androidx 下面的软件包中获得

implementation "androidx.constraintlayout:constraintlayout:2.0.0-alpha1"

通过重新安装 Android Studio 解决了类似的问题。

将约束布局依赖项从“1.0.0-alpha2”更新到相关版本。 编译‘ com.android.Support.約束: 約束-布局: 2.0.0-alpha5’

阿尔法版本不再可用!

implementation 'com.android.support.constraint:constraint-layout:1.1.3'

只是为了提醒那些还在寻找这个的人。

ConstraintLayout1.0.1及更低版本已经被 maven 弃用。

有关可下载的可用约束布局的列表,请参见下表:

Https://maven.google.com/web/index.html?q=constrain#com.android.support.constraint:constraint-layout

目前最简单的解决办法就是改变

implementation 'com.android.support.constraint:constraint-layout:1.0.0-beta1'

implementation 'com.android.support.constraint:constraint-layout:1.0.2'

我在 机器人和我能够编译的 Gradle (app)下面添加了以下脚本。

compileOptions {
sourceCompatibility 1.8
targetCompatibility 1.8
}