在运行时确定Kotlin的版本

War*_*voy 2 reflection kotlin

在运行时可以写些什么来确定Kotlin的版本?

fun main(args : Array<String>) { 
  println("v" + System.getProperty("java.version"))
}
Run Code Online (Sandbox Code Playgroud)

打印一个版本,但是它是Java JDK版本。使用“ kotlin.version”将输出null。可以在运行时完成吗?

如果总的答案是否定的,是否有办法将这些信息从编译阶段嵌入到特定的函数或类中?

Cil*_*ing 5

KotlinVersion.CURRENTkotlin包装中使用。

看到这个:https : //try.kotlinlang.org/#/UserProjects/3srgu5mb0f24f8oe8rpclp3n45/r84oi5hiv7hm2toc1tcu7a0h71

您可以在页面底部更改KotlinVersion并看到不同的结果。

上面工具中的代码:

fun main(args: Array<String>) {
    println(KotlinVersion.CURRENT)
}
Run Code Online (Sandbox Code Playgroud)

  • 请注意,`KotlinVersion.CURRENT` 返回您的代码当前_运行_的 Kotlin 标准库的版本,而不是您的代码_编译_时使用的标准库或编译器的版本。 (3认同)