Как получить класс только для Kotlin, используя отражение в JVM?
Я разрабатываю плагин gradle, и ему нужно отразить некоторые классы kotlin, чтобы сгенерировать некоторый код, но они не видны в JRE с тем же именем, и я не знаю, как получить к ним правильный доступ.
Я знаю что в этом случае kotlin.Any
становится java.lang.Object
, но как это определить во время выполнения?
fun getClassFromKotlinName(kotlinName: String): Class<*>{ // Maybe return KClass<*> too if easier
return Class.forName(kotlinName)
}
fun main() {
println(getClassFromKotlinName("kotlin.Any"))
}
Это вызывает:
Execution failed for task ':generateJvmCommonSources'.
> java.lang.ClassNotFoundException: kotlin.Any
Как я могу это решить?