我计划构建一个库,该库使用 Kotlin 协程通过 retrofit2 对 REST 服务进行 HTTP 调用。 最终输出的 jar 将包含所有改造和 Kotlin 协程依赖项,我们可以在普通 java 项目中使用这个最终的 jar 吗?
最佳答案
您的库可以在内部使用协程,但您不能向 Java 客户端公开任何suspend fun
。从 Java 调用 suspend fun
几乎是不可能的,因为它的签名引用了内部类。
向 Java 公开非阻塞 Kotlin 代码的推荐方法是通过 CompletableFuture
,使用 kotlinx-coroutines-jdk8
模块。
关于java - 我可以在纯 Java 项目中使用使用 Kotlin 协程构建的库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53736980/