Android版本目录中androidx.ui.graphics依赖的正确配置语法问询
Android版本目录中androidx.ui.graphics依赖的正确配置语法问询
嗨,我来帮你理清这个版本目录配置的问题!
首先得明确一个核心原则:版本目录里的group和name必须严格匹配依赖在Maven仓库中的真实坐标,不然Gradle会找不到这个依赖包。
先看你纠结的两个选项:
- 第一个选项
android-ui-graphics = { group = "androidx", name = "ui-graphics", version.ref = "compose" }对应的坐标是androidx:ui-graphics,这个坐标在Maven仓库里根本不存在,所以肯定不对。 - 第二个选项
android-ui-graphics = { group = "androidx.ui", name = "graphics", version.ref = "compose" }对应的坐标是androidx.ui:graphics,同样也不是官方发布的依赖坐标,也是错误的。
那正确的配置应该怎么写呢?
Jetpack Compose的ui-graphics依赖的真实Maven坐标是androidx.compose.ui:ui-graphics,所以要对应这个坐标来配置版本目录。如果你想在build.gradle里用implementation(libs.androidx.ui.graphics)这种嵌套式的引用,版本目录(比如libs.versions.toml)可以这么写:
[versions] compose = "你的Compose版本号(比如1.5.4)" [androidx.ui] graphics = { group = "androidx.compose.ui", name = "ui-graphics", version.ref = "compose" }
或者你也可以用短横线分隔的别名写法:
[versions] compose = "你的Compose版本号(比如1.5.4)" [libraries] androidx-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics", version.ref = "compose" }
这时候在build.gradle里就可以用implementation(libs.androidx.ui.graphics)或者implementation(libs.androidxUiGraphics)(Gradle会自动把短横线别名转成驼峰式)来引用这个依赖。
另外补充下,你之前提到的libs.androidx.core.ktx的配置是正确的,因为它对应的真实坐标就是androidx.core:core-ktx,和你写的group、name完全匹配。
内容来源于stack exchange
相关产品推荐
相关产品推荐

