哪些版本的 Kotlin 与哪些版本的 JDK 兼容?

spe*_*777 5 java kotlin

我知道运行 Kotlin 时 Kotlin 需要 JDK。例如,我使用 Kotlin 1.4.0,我使用 JDK 14。但是,我不确定 Kotlin 和 JDK 版本的兼容性。

是否有 Kotlin 和 JDK 版本兼容性表?

我查看了官方文档,但找不到我想要的信息。

k31*_*159 28

下表显示了首先开始支持每个新 JVM 目标的 Kotlin 编译器版本:

科特林版本 发布日期 JVM 目标
1.0 2016年2月15日 仅1.6
1.1 2017年7月2日 1.6至1.8
1.3.30 11/4/2019 1.6至12
1.3.70 2020年3月3日 1.6至13
1.4.0 2020年8月14日 1.6至14
1.4.20 2020年11月19日 1.6至15
1.5.0 2021年4月26日 1.6至16
1.6.0 16/11/2021 1.8至17
1.6.20 2022 年 4 月 4 日 1.8至18
1.8.0 2022年12月28日 1.8至19
1.9.0 2023年6月7日 1.8至20
1.9.20 2023 年 1 月 11 日 1.8至21

  • @MarianKlühspies 据我所知,这个矩阵在其他地方不存在。我通过安装连续版本的 Kotlin 编译器命令行并进行尝试来解决这个问题。 (8认同)
  • 哦,谢谢你的努力。这是他们官方网站上一个相当缺失的部分。我在谷歌上搜索,想弄清楚为什么 Kotlin 似乎还不能与 JDK 21 一起工作,并找到了你的帖子。 (4认同)

Mic*_*ael 8

Kotlin 面向哪些 JVM 版本?

Kotlin 允许您选择要执行的 JVM 版本。默认情况下,Kotlin/JVM 编译器生成 Java 6 兼容的字节码。如果您想利用较新版本的 Java 中可用的优化,您可以明确指定目标 Java 版本 8 到 13。请注意,在这种情况下,生成的字节码可能无法在较低版本上运行。

https://kotlinlang.org/docs/reference/faq.html#which-versions-of-jvm-does-kotlin-target