您如何设置Arrow依赖项才能使@optics注释真正起作用?对于用@optics注释的数据类,不会生成任何伴随对象。

如果我没记错的话,这是一个注释处理器,因此应该使用kapt导入它,但是the documentation会将其用作compile

最佳答案

对于箭头0.10.0

apply plugin: 'kotlin-kapt'

def arrow_version = "0.10.1-SNAPSHOT"
dependencies {
    implementation "io.arrow-kt:arrow-optics:$arrow_version"
    implementation "io.arrow-kt:arrow-syntax:$arrow_version"
    kapt    "io.arrow-kt:arrow-meta:$arrow_version" // <-- this is the kapt plugin
}

然后:
@optics data class Street(val number: Int, val name: String) {
    companion object {} // <-- this is required
}

关于kotlin - ArrowKT-@optics注释未生成代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58243913/

10-13 06:49