首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何处理kotlin多平台数据类中的注释?

如何处理kotlin多平台数据类中的注释?
EN

Stack Overflow用户
提问于 2020-09-01 20:48:35
回答 1查看 334关注 0票数 2

最近,我将我的KMP项目拆分为全栈项目和核心库(主要由公共数据类组成),并发现我需要在一个公共模块中定义的一个数据类上使用JVM库中的注释。

似乎不可能在Kotlin公共代码中使用Java库中的批注。

有什么可能的方法来解决这个问题,最好避免通过expect声明这样的数据类,然后在actual平台上重复它的实现,但使用不同的注释?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-08 23:52:34

你可以自己expect/actual注解。

比方说,如果你有一个像这样的JVM注解,@Entity

您可以拥有像src/commonMain/Entity.kt这样的文件

代码语言:javascript
运行
复制
  expect annotation class Entity()

src/androidMain/Entity.kt

代码语言:javascript
运行
复制
  actual typealias Entity = package.to.Entity

src/iosMain/Entity.kt

代码语言:javascript
运行
复制
  actual annotation class Entity()

现在,您可以继续在您的通用代码中使用它

代码语言:javascript
运行
复制
@Entity
data class Movies(
  val title: String,
  val release: Int
)
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63688014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档