无法从仅限 jvm 的模块访问 commonMain 多平台类

Mic*_*ł K 6 unit-testing jvm intellij-idea kotlin kotlin-multiplatform

我有一个具有以下结构的项目:

  • multiplatformmodule - 包含一个 kotlin 类 SomeMultiPlatformClass
  • jvmmodule - 一个纯 jvm 模块,它依赖于 multiplatformmodule

问题是在 jvmmodule 中,我无法multiplatformmodule在运行测试时访问任何类。我明白了java.lang.NoClassDefFoundError: com/example/multiplatform/multiplatformmodule/SomeMultiPlatformClass。IDE (Anroid Studio) 也将此类标记为未解析。然而,当multplatformmodule从另一个多平台模块访问类时,它会构建。

在示例项目https://github.com/micHar/kmm-dependency-issues/tree/master 中可以看到更多内容。

Kev*_*gan 2

我克隆了你的存储库并使用 Intellij 2020.3.1 打开它,它似乎解决得SomeMultiPlatformClass很好。我尝试从 IDE 运行测试,但由于不同的原因而不起作用。当我将 更改@Test为指向kotlin.test.TestIDE 时,测试也运行良好。

在此输入图像描述

https://github.com/kpgalligan/kmm-dependency-issues