有两个问题不允许在这些技术之间产生兼容性。
喷气式组合
第一个问题是它只适用于。
是一个预览功能,只在Android的金丝雀版本中包含对撰写的支持。要在应用程序项目中使用撰写,请下载并安装最新版本的IDE。
Jetpack与以下内容一起工作:
Kotlin多平台移动电话
第二个问题是Android构建在中有一个bug。我使用的方法如下:
Android Studio Arctic Fox | 2020.3.1 Canary 11
Build #AI-203.7148.57.2031.7209405, built on March 15, 2021
Runtime version: 11.0.8+0-b944-P17168821 amd64
VM: OpenJDK 64-Bit Server VM by N/A
Current Desktop: ubuntu:GNOMEgradle-wrapper.properties中distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-all.zipbuild.gradle (Project)中buildscript {
dependencies {
classpath 'com.android.tools.build:gradle:7.0.0-alpha11'
}
}JavaVersion.VERSION_11错误(发行/KT-43944):
A problem occurred configuring project ':kmm_shared'.
> Configuration with name 'testApi' not found.
* Exception is:
Caused by: org.gradle.api.artifacts.UnknownConfigurationException: Configuration with name 'testApi' not found.KMM目前唯一的解决办法是使用Android Studio Beta (但这与Jetpack不兼容)。
鉴于此,有两个解决方案,我无法面对。编写构建或修复中的KMM错误。
应该注意的是,KMM和Jetpack使用了不同版本的AGP和gradle发行版。然后我突然想到,我不知道是否有可能,延迟版本在同一个项目中共存。
任何建议都是欢迎的。
谢谢
发布于 2021-03-28 00:17:40
技术之间存在兼容性。由于在MortyComposeKMM中所做的测试,我能够调试项目中的错误。
问题/KT-43944的解决方案不适用于我,因为在buildSrc中,4.1.2中有一个gradle的依赖项,它生成了Failed to notify build listener. > Please initialize at least one Kotlin target in 'x (:x)'.类型的错误。
解决方案:
build.gradle.kts (:buildSrc)
dependencies {
implementation("com.android.tools.build:gradle:7.0.0-alpha11")
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.31")
}JavaVersion.VERSION_11发布于 2021-03-26 21:57:42
按照https://youtrack.jetbrains.com/issue/KT-43944中的建议,您必须在build.gradle.kts(:shared)中添加以下块作为解决办法:
android {
configurations {
create("androidTestApi")
create("androidTestDebugApi")
create("androidTestReleaseApi")
create("testApi")
create("testDebugApi")
create("testReleaseApi")
}
}发布于 2021-03-27 09:44:48
您甚至可以使用AndroidStudio4.0.1在多平台中使用。唯一的问题是你失去了一些东西,比如预览。
请查看JetBrains Compose repo中的示例:
https://stackoverflow.com/questions/66811117
复制相似问题