繁体   English   中英

Jetpack Compose 现有多模块应用程序中的依赖项

[英]Jetpack Compose dependencies in existing Multi-Module app

我在将 jetpack compose 集成到多模块项目中时遇到了问题。

一个模块库具有 jetpack compose 的所有依赖项,我能够编译和运行编写在该模块内的 jetpack compose 代码。

 android {
    ...
   kotlinOptions {
      jvmTarget = '1.8'
      useIR = true
   }

   buildFeatures {
      compose true
   }

   composeOptions {
      kotlinCompilerExtensionVersion compose_version
      kotlinCompilerVersion '1.4.21'
   }
 }


dependencies {
   ...
   implementation "androidx.compose.ui:ui:$compose_version"
   implementation "androidx.compose.material:material:$compose_version"
   implementation "androidx.compose.ui:ui-tooling:$compose_version"
   ...
}

其中 compose_version = '1.0.0-alpha09'

当我将该库模块添加到应用程序模块并在那里集成jetpack compose时,问题就出现了。 它还需要在 app 模块的 build.gradle.kts 文件中添加所有依赖项。

添加相同的代码行后,gradle 任务 (:app:compileDebugKotlin) 继续无限循环运行,没有任何错误消息。

我在这里做错了什么? 任何帮助都将是可观的。 谢谢!

Update-1运行 gradlew compileDebugKotlin --debug,它卡在下面的堆栈跟踪

2020-12-30T12:26:42.079+0530 [DEBUG] 
[org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on 
daemon addresses registry.
2020-12-30T12:26:42.079+0530 [DEBUG] 
[org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire 
shared lock on daemon addresses registry.
2020-12-30T12:26:42.080+0530 [DEBUG] 
[org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on 
daemon addresses registry.
2020-12-30T12:26:42.080+0530 [DEBUG] 
[org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on 
daemon addresses registry.

我有一个非常相似的问题,完全相同的堆栈跟踪。 在我的情况下,它是由 kotlin 合成(android-kotlin-extensions)插件引起的。 删除插件(如添加 buildFeatures { compose true } 中的建议会导致构建无限期进行。如何调查问题? )解决了这个问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM