从命令行运行 Java 到 Kotlin 转换器?

您可以使用 Intellij 和 Eclipse 的 Kotlin 插件将 Java 文件转换为 Kotlin。是否可以在没有这些IDE的情况下从命令行完成此转换?


答案 1

这似乎是可能的,但没有工具,只有代码。在Kotlin Github存储库的j2k模块中有测试,下面的示例取自测试(AbstractJavaToKotlinConverterSingleFileTest):

private fun fileToKotlin(text: String, settings: ConverterSettings, project: Project): String {
    val file = createJavaFile(text)
    val converter = JavaToKotlinConverter(project, settings,
                                          IdeaReferenceSearcher, IdeaResolverForConverter)
    return converter.filesToKotlin(listOf(file), J2kPostProcessor(formatCode = true)).results.single()
}

我想,你可以对该模块进行.jar,并编写自己的简单包装器,使其在文件上工作。JavaToKotlinConverter


UPD:代码已经迁移到存储库,你可以在这里找到相关的测试:https://github.com/JetBrains/intellij-community/blob/2382372993bee233bc6fce95c3917a68a33da111/plugins/kotlin/j2k/new/tests/test/org/jetbrains/kotlin/nj2k/AbstractNewJavaToKotlinConverterSingleFileTest.ktintellij-community


答案 2

推荐