
我舍不得的人从来没有舍不得我
前几天,JetBrains 官方出手,在 VS Code 里也能像点外卖一样,一键把 Java 文件「秒转」Kotlin,迁移老项目终于不用头秃了!
如果你正在:
那这个新插件简直就是为你量身定制的「翻译官」!
以前想转语言,要么手动重写(累),要么切到 IDEA(麻烦)。现在,在 VS Code 里右键一下,搞定,丝滑得像喝了一杯冰美式 ☕️
特性 | 说明 | 用户收益 |
|---|---|---|
🎯 右键一键转换 | 在编辑器或资源管理器中右键 .java 文件,选 Convert to Kotlin | 零学习成本,操作像复制粘贴一样简单 |
🧠 官方引擎加持 | 复用 IntelliJ IDEA 同款的 Java-to-Kotlin 转换引擎 | 转换结果更符合 Kotlin 风格,不是机械翻译 |
📦 单文件灵活转换 | 支持逐个文件转换,不影响其他代码 | 迁移过程可控,随时回退,风险低 |
🔌 生态友好 | 与 Kotlin LSP 等工具协同,不绑定特定 IDE | 用 VS Code 也能享受专业级 Kotlin 体验 |
打开 VS Code 扩展市场,搜索 Java to Kotlin Converter(JetBrains 官方出品),点击安装。

在 VS Code 中打开任意 .java 文件,比如:
// UserService.java
publicclassUserService{
privateString name;
publicUserService(String name){
this.name = name;
}
publicStringgreet(){
return"Hello, "+ name;
}
}在编辑器内右键,选择 Convert to Kotlin,瞬间生成:

// UserService.kt
class UserService(private val name: String) {
fun greet(): String {
return "Hello, $name"
}
}🎉 看到没?构造器简化、字符串模板、val 不可变属性,Kotlin 的优雅一键到位!
假设你有一个用户管理的 Java 类:
// UserController.java
@RestController
@RequestMapping("/users")
publicclassUserController{
@Autowired
privateUserService userService;
@GetMapping("/{id}")
publicResponseEntity<User>getUser(@PathVariableLong id){
User user = userService.findById(id);
if(user !=null){
returnResponseEntity.ok(user);
}
returnResponseEntity.notFound().build();
}
}转换后变成 Kotlin 风格:
// UserController.kt
@RestController
@RequestMapping("/users")
class UserController(
@Autowired private val userService: UserService
) {
@GetMapping("/{id}")
fun getUser(@PathVariable id: Long): ResponseEntity{
val user = userService.findById(id)
return if (user != null) {
ResponseEntity.ok(user)
} else {
ResponseEntity.notFound().build()
}
}
}✨ 亮点:
@Autowired 构造器注入更简洁if 表达式直接返回值,少写 return💡 小建议:转换后建议人工 review 一下,特别是泛型、匿名内部类等复杂结构,确保业务逻辑无损。
⚠️ 使用小贴士
.kt 文件,原 .java 保留,但建议 git commit 后再操作