使用 Moshi 的 Kotlin codegen 有困难
Difficulty using Moshi's Kotlin codegen
我正在尝试使用 Moshi 的 Kotlin codegen 在 Kotlin 中获得注释支持。尽管仔细按照 moshi codegen documentation 中的说明进行操作,但无法识别 @JsonClass(generateAdapter = true)
中的注释 JsonClass
,并且出现以下错误:
error: incompatible types: NonExistentClass cannot be converted to Annotation@error.NonExistentClass()
我的应用build.gradle
文件如下:
...
apply plugin: 'kotlin-kapt'
android {
...
}
dependencies {
...
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'com.squareup.retrofit2:converter-moshi:2.5.0'
kapt 'com.squareup.moshi:moshi-kotlin-codegen:1.8.0'
}
添加
时识别@JsonClass
注解
implementation("com.squareup.moshi:moshi-kotlin:1.8.0")
.
但是,moshi reflection documentation 表示只有在使用反射而不是代码生成时才需要这种依赖关系。
知道我错过了什么吗?谢谢!
@JsonClass
是标准魔石神器中的一种。 Retrofit 的 converter-moshi
神器可传递地引入 Moshi,但没有最新版本的 Moshi。 指定 implementation("com.squareup.moshi:moshi:1.8.0")
.
我正在尝试使用 Moshi 的 Kotlin codegen 在 Kotlin 中获得注释支持。尽管仔细按照 moshi codegen documentation 中的说明进行操作,但无法识别 @JsonClass(generateAdapter = true)
中的注释 JsonClass
,并且出现以下错误:
error: incompatible types: NonExistentClass cannot be converted to Annotation@error.NonExistentClass()
我的应用build.gradle
文件如下:
...
apply plugin: 'kotlin-kapt'
android {
...
}
dependencies {
...
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'com.squareup.retrofit2:converter-moshi:2.5.0'
kapt 'com.squareup.moshi:moshi-kotlin-codegen:1.8.0'
}
添加
时识别@JsonClass
注解
implementation("com.squareup.moshi:moshi-kotlin:1.8.0")
.
但是,moshi reflection documentation 表示只有在使用反射而不是代码生成时才需要这种依赖关系。
知道我错过了什么吗?谢谢!
@JsonClass
是标准魔石神器中的一种。 Retrofit 的 converter-moshi
神器可传递地引入 Moshi,但没有最新版本的 Moshi。 指定 implementation("com.squareup.moshi:moshi:1.8.0")
.