给定以下 Kotlin 注释:
public Retention(RetentionPolicy.RUNTIME) annotation class foo(val text : String)
以及下面的代码来检查一个类是否被上面的注释注释:
if (javaClass<Bar>().isAnnotationPresent(javaClass<foo>())) {
// do something here.
}
如果注释类 ( foo
) 和使用它的代码位于同一个模块(maven 工件)中,则代码可以毫无问题地编译和运行。
但是,如果我将它们分成不同的模块,则会发生以下编译错误:
Kotlin:类型不匹配:推断类型为 java.lang.Class 但预期为 java.lang.Class
知道可能是什么问题吗?