我想使用 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 中继承。我还尝试使用实验性实现 jpa 注释,@OptionalExpectation
但此后无济于事:
- 它们在使用时需要非注释类型,
typealias
而无法使用@OptionalExpectation
. - 让多平台注释从多平台注释继承是不可能的,因为 kotlin 还不支持注释继承。
我应该避免使用数据类功能并使用继承还是有更优雅的方式?