我对这个问题感到非常困惑。我的Gradle文件中有以下几行:
implementation "androidx.compose.runtime:runtime:1.0.0-alpha04"
implementation "androidx.compose.compiler:compiler:1.0.0-alpha04"
implementation "androidx.compose.runtime:runtime-rxjava2:1.0.0-alpha04"
但是,当我生成时,我得到了以下错误:
Could not determine the dependencies of task ':app-name-omitted:prepareDebugKotlinCompileTask'.
> Could not resolve all task dependencies for configuration ':app-name-omitted:kotlin-extension'.
> Could not find androidx.compose:compose-compiler:1.0.0-alpha04.
Searched in the following locations:
- https://dl.google.com/dl/android/maven2/androidx/compose/compose-compiler/1.0.0-alpha04/compose-compiler-1.0.0-alpha04.pom
- https://repo.maven.apache.org/maven2/androidx/compose/compose-compiler/1.0.0-alpha04/compose-compiler-1.0.0-alpha04.pom
- https://jcenter.bintray.com/androidx/compose/compose-compiler/1.0.0-alpha04/compose-compiler-1.0.0-alpha04.pom
Required by:
project :app-name-omitted
Possible solution:
- Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html
我对此感到困惑,因为编译器确实存在于Google的repo中:https://maven.google.com/web/index.html#androidx.compose.compiler:compiler
如果有必要,我可以发布更多信息,但我想保持简单。即使合成设置完全错误,为什么它找不到POM文件呢?
8条答案
按热度按时间y53ybaqx1#
有相同的问题,在将gradle版本更新为后得到解决
并且没有在composeoptions中声明编译器版本
kotlinCompilerExtensionVersion
,而是声明为依赖项hts6caw32#
我最近也遇到了同样的问题。一些compose编译器版本支持特定的kotlin版本。
感谢@Braian撰写编译器
Compose to Kotlin Compatibility Map
在我的情况下,下面的版本工程.
compose_version = '1.3.0-alpha01'
与
kotlinCompilerExtensionVersion "1.2.0-beta03"
以下是我的gradle文件以供参考。
编译器版本
kotlin编译器扩展版本"1.3.0"
Kotlin版本
身份证'www.example.com'版本'1.7.10'适用错误org.jetbrains.kotlin.android' version '1.7.10' apply false
juud5qan3#
我必须升级我的Gradle版本:
vwkv1x7d4#
我也遇到过类似的问题,但在IntelliJ IDEA中运行Android项目时,而不是Android Studio。
我似乎升级
com.android.tools.build:gradle
依赖项确实修复了原来的问题(“Gradle找不到Android Compose Compiler”),但后来我开始使用other problems,所以不得不寻找其他方法。我使用IDEA的新建项目向导,然后选择Kotlin,然后选择“Multiplatform”(在Jetpack Compose for Desktop组下)。这创建了一个新项目,包含一个Android模块、一个Desktop模块和一个Common模块。从这个模板中,我基本上将Android和Common模块的设置复制到了我最初的Android项目中。
主要区别在于JetBrains似乎提供了一个(又一个)Gradle插件(
org.jetbrains.compose
),用于为我们设置Compose(我猜是因为进行了一些更改,以便也支持桌面),有了这个插件,一切似乎都正常了,“Gradle找不到Android Compose Compiler”的问题消失了。这是新项目模板中使用的插件:
以下是添加合成依存关系的方式:
请记住,我不一定在这里使用桌面,至少现在不使用,但这是唯一的方法,我可以使一个Android应用程序与最新(2021年以上)发布的合成与IDEA(而不是Android Studio)安装。
kmpatx3s5#
您应该将编译器版本添加到应用的
build.gradle
:版本应该与Kotlin版本匹配,例如Kotlin
1.7.10
应该与compose compiler1.3.0
匹配。请参考此Map查找正确的匹配:https://developer.android.com/jetpack/androidx/releases/compose-kotlinxnifntxz6#
您所犯的错误是编译器的版本与合成版本相同,因此gradle无法找到它,它应该具有kotlin的版本,因为编译器严格要求kotlin不进行合成
删除编译器依赖项
而是在composeOptions中声明编译器版本,编译器将自动为您获取
yx2lnoni7#
21年3月27日
Jetpack合成是一项预览功能,仅Canary版本的Android Studio支持合成。要在应用项目中使用合成,请下载并安装最新Canary版本的IDE。
如果您使用的是Canary,则只需使用
composeOptions
添加编译器版本分级
compose.compiler
r7s23pms8#
对我有效的是我使用了官方网站https://developer.android.com/jetpack/androidx/versions/all-channel上的Material 3的最新合成版本