Как получить класс только для 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

Как я могу это решить?

0 ответов

Другие вопросы по тегам