【发布时间】:2019-04-05 10:16:15
【问题描述】:
我想使用 kotlin/multiplatform 实现一个项目,该项目由 jvm 上的后端和 js 中的 web-app 组成。结构是这样的:
root
|- webapp (kotlin/js using kotlin-react)
|- shared (kotlin/multiplatform for shared data)
|- server (kotlin/jvm using micronauts)
应用程序使用的数据类属于共享项目,但要使用 jpa,我需要 jvm-annotations。
一个解决方案是不使用 kotlin 数据类并在 jvm 中继承。我还尝试使用实验性的@OptionalExpectation 来实现 jpa 注释,但此后无处可去:
- 它们在与
typealias一起使用时需要非注释类型,而@OptionalExpectation无法实现。 - 由于 kotlin 尚不支持注解继承,因此无法让多平台注解继承自多平台注解。
我应该避免使用数据类功能并使用继承还是有更优雅的方式?
【问题讨论】:
标签: jpa kotlin kotlin-multiplatform