【问题标题】:Kotlin MPP pod integration failsKotlin MPP pod 集成失败
【发布时间】:2021-09-27 12:13:58
【问题描述】:

3 天前,我刚刚发布了我的 Kotlin MPP 的第一个版本作为库。它已成功集成在 Android 和 iOS 上。 在第一次发布后,我切换到了一个同事分支并使我的缓存失效。从那以后,我无法再同步 gradle 了。

我收到此错误:

任务:cinteropSnowplowTrackerIosArm64 线程“主”java.lang.Error 中的异常:/var/folders/gv/rc4dmzjs3wj9kt4kr00nwhdw0000gn/T/13496315139908854548.m:1:9:致命错误:无法构建模块“SnowplowTracker” 在 org.jetbrains.kotlin.native.interop.indexer.UtilsKt.ensureNoCompileErrors(Utils.kt:152) 在 org.jetbrains.kotlin.native.interop.indexer.ModuleSupportKt.getModulesASTFiles(ModuleSupport.kt:68) 在 org.jetbrains.kotlin.native.interop.indexer.ModuleSupportKt.getModulesInfo(ModuleSupport.kt:14) 在 org.jetbrains.kotlin.native.interop.gen.jvm.MainKt.buildNativeLibrary(main.kt:515) 在 org.jetbrains.kotlin.native.interop.gen.jvm.MainKt.processCLib(main.kt:266) 在 org.jetbrains.kotlin.native.interop.gen.jvm.MainKt.interop(main.kt:76) 在 org.jetbrains.kotlin.cli.utilities.InteropCompilerKt.invokeInterop(InteropCompiler.kt:45) 在 org.jetbrains.kotlin.cli.utilities.MainKt.mainImpl(main.kt:38) 在 org.jetbrains.kotlin.cli.utilities.MainKt.main(main.kt:60)

即使在回到我的第一个 POC 提交(已成功发布了几次)之后,我也无法再构建了。 Here is how I integrated the iOS dependency. 我不知道问题是什么。我尝试设置一大堆不同的 JDK 版本(8、11、14、15、16、17)但没有成功。我尝试将 Kotlin 版本从 1.4.20 升级到 1.5.x。我尝试降级 IntelliJ IDEA 和更多的东西都没有成功。我现在唯一的猜测是它与一些更新的插件有关。我该如何验证?

以下是 pod 的集成方式:

   cocoapods {
    ios.deploymentTarget = "12"
    summary = "Kaia tracking library"
    homepage = "https://github.com/KaiaHealth/kaia-tracking-library"
    authors = company

    pod("SnowplowTracker") {
        version = "~> 1.2.0"
    }
}

【问题讨论】:

    标签: kotlin cocoapods kotlin-multiplatform-mobile


    【解决方案1】:

    感谢 xoif 为 he answered this on youtrack。问题似乎是xcode命令行工具13,解决方法是降级:

    1. Download Xcode 12.5
    2. 选择 Xcode 12.5.1 作为默认命令行工具(在 Xcode -> Preferences -> Locations 中)
    3. cinterop 应该会再次工作。

    【讨论】:

    • 谢谢!这是我的解决方法。
    【解决方案2】:

    我认为这与最近的 Xcode/工具链更新有关。我对上周编译良好的其他 cocoapod 也有同样的问题。我现在刚刚删除了 pod,但如果有办法降级 xcode 工具链,它可能会有所帮助。

    【讨论】:

    【解决方案3】:

    很高兴 xcode 降级对你们中的一些人有所帮助。据称,有关 Xcode 13 和 Clang/cinterop 的一些问题将在 Kotlin 1.6.0 中得到修复。但是,由于其他问题,当前的预览版(1.6.0-M1)对我来说仍然失败。如果我找到一种方法让我的配置在 kotlin 1.6.0 和 Xcode 13 上运行,我会在这个帖子中告诉你。

    【讨论】:

      猜你喜欢
      • 2022-08-14
      • 2021-09-07
      • 2021-01-28
      • 1970-01-01
      • 1970-01-01
      • 2020-11-20
      • 2018-08-31
      • 2021-05-31
      • 1970-01-01
      相关资源
      最近更新 更多