2

我正在尝试创建一个具有共享依赖项的多平台项目,但我无法找出我做错了什么。

背景是我想创建一个生成某种配置的库,并将该配置用于应该在 jvm 和 node.js 上运行的运行时库。因此可以共享配置数据类,我想将其放入共享模块中。该代码根本不是特定于平台的。配置生成(我称之为 CLI)应该只是 jvm。所以我有这个模块(带有插件名称):

  • cli (org.jetbrains.kotlin.jvm)
  • 共享(kotlin-platform-common)
  • 运行时共享(kotlin-platform-common)
  • 运行时-js (kotlin-platform-js)
  • runtime-jvm (kotlin-platform-jvm)

我通过 将共享模块设置为依赖compile project(":shared")项,但似乎没有一个共享类位于从运行时开始的模块的类路径中。

这还不可能还是我做错了什么?

4

1 回答 1

4

要将通用模块(即使用 构建的模块kotlin-platform-common)与其特定于平台的实现连接起来,您应该为它们提供expectedBy project(':shared')依赖关系而不是依赖关系compile

您可以在Kotlin 参考或一些可用的示例项目中找到示例构建脚本,例如此处

于 2018-09-13T20:52:56.473 回答