我有一个项目包含了.java和.kt文件。Kotlin编译器会同时编译.java和.kt文件,还是只编译我的.kt文件?
kotlinc
只能编译 Kotlin 文件(.kt
)。混合语言项目需要同时使用 kotlinc
和 javac
。如果引用只流向一边,例如 Java 代码引用 Kotlin 代码而不是反过来,则编译顺序很容易确定。在这种情况下,您需要先编译 Kotlin 代码,然后在编译 Java 代码时将输出包含在 javac
的类路径中。kotlinc
并传入任何引用的 Java 源文件(因为 .class
文件尚不可用)。然后,再将由 kotlinc
构建的类文件包含在类路径中,以便在编译 Java 文件时使用。单独来说,它并不需要,然而根据其文档 https://github.com/JetBrains/kotlin ,运行Kotlin编译器的要求之一是JDK,因此如果您有Kotlin,则也有 javac