运行 Java 从命令行到 Kotlin 转换器?
Run Java to Kotlin converter from the command line?
您可以使用 Intellij 和 Eclipse 的 Kotlin 插件将 Java 文件转换为 Kotlin。在没有这些 IDE 的情况下,可以从命令行完成这种转换吗?
这似乎是可能的,但没有工具,只有代码。 j2k module in Kotlin Github repository, the example below is taken from the tests (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
编写您自己的简单包装器以使其在文件上工作。
更新:代码已经迁移到intellij-community
仓库,你可以在这里找到相关测试:https://github.com/JetBrains/intellij-community/blob/2382372993bee233bc6fce95c3917a68a33da111/plugins/kotlin/j2k/new/tests/test/org/jetbrains/kotlin/nj2k/AbstractNewJavaToKotlinConverterSingleFileTest.kt
您可以使用 Intellij 和 Eclipse 的 Kotlin 插件将 Java 文件转换为 Kotlin。在没有这些 IDE 的情况下,可以从命令行完成这种转换吗?
这似乎是可能的,但没有工具,只有代码。 j2k module in Kotlin Github repository, the example below is taken from the tests (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
编写您自己的简单包装器以使其在文件上工作。
更新:代码已经迁移到intellij-community
仓库,你可以在这里找到相关测试:https://github.com/JetBrains/intellij-community/blob/2382372993bee233bc6fce95c3917a68a33da111/plugins/kotlin/j2k/new/tests/test/org/jetbrains/kotlin/nj2k/AbstractNewJavaToKotlinConverterSingleFileTest.kt