怎样在vscode中配置Kotlin开发与运行环境【教程】

发布时间 - 2026-01-27 00:00:00    点击率:
VS Code 运行 Kotlin 需装 kotlinc、Gradle 和插件协同:1. 安装 kotlinc 并配置 PATH;2. 装 Red Hat Kotlin 插件(语法支持)+ Gradle(构建)或 Code Runner(脚本式);3. 调试需额外装 fwcd.kotlin 插件并确保 build 生成 jar。

VS Code 本身不原生支持 Kotlin 编译与运行,必须借助插件和外部工具链协同工作;直接装个插件点“运行”就出结果,是不可能的。

安装

Kotlin 编译器(kotlinc)并配置 PATH

Kotlin 官方命令行编译器是基础依赖,VS Code 插件无法绕过它。不装 kotlinc,连最简单的 HelloWorld.kt 都编译不过。

  • 推荐通过 sdkman 安装(Linux/macOS):sdk install kotlin,自动配置好 PATH
  • Windows 用户建议用 choco install kotlin,或手动下载 Kotlin release zip,解压后把 bin/ 目录加进系统 PATH
  • 验证是否生效:终端执行 kotlinc -version,应输出类似 Kotlin version 2.0.0
  • 常见坑:VS Code 终端能运行 kotlinc,但图形界面右键“Run Code”失败——大概率是 VS Code 没读取到你 shell 中的 PATH,重启 VS Code 或改用集成终端启动

安装 Kotlin 插件与配套构建工具

仅装 Red Hat's Kotlin 插件(ID: redhat-developer.vscode-kotlin)只提供语法高亮和简单补全,不带运行能力。必须搭配构建工具才能真正编译、依赖管理、运行。

  • 日常开发强烈建议用 Gradle:新建项目时用 gradle init --type kotlin-application,插件会自动识别 build.gradle.kts
  • 如果坚持纯脚本式开发(无构建文件),可用 Code Runner 插件(ID: formulahendry.code-runner),但需手动配置其 code-runner.executorMap
"code-runner.executorMap": {
    "kotlin": "cd $dir && kotlinc $fileName -include-runtime -d $fileNameWithoutExt.jar && java -jar $fileNameWithoutExt.jar"
}
  • 注意:-include-runtime 是关键,否则运行时报 NoClassDefFoundError: kotlin/jvm/internal/Intrinsics
  • 不推荐用 Maven 起步——Kotlin 的 Maven 插件配置比 Gradle 更冗长,出错概率更高

调试 Kotlin 代码需要额外装 Debugger for Kotlin

Red Hat 插件不提供调试功能。想设断点、看变量、单步执行,必须装另一个插件。

  • 安装 fwcd.kotlin(ID: fwcd.kotlin),它基于 Debug Adapter Protocol,支持 Launch/Attach 模式
  • 要求项目有 build.gradle.kts 且已生成 .class.jar 输出,否则调试器找不到可执行字节码
  • 调试前务必先执行一次 ./gradlew build,否则 launch.json 中的 program 路径(如 build/libs/xxx.jar)会不存在
  • 常见错误信息:Cannot find the main class —— 检查 build.gradle.kts 是否正确设置了 application.mainClass.set("MainKt")

真正卡住人的往往不是“怎么配”,而是路径没对齐、插件职责混淆、或者误以为 Kotlin 像 Python 那样“保存即运行”。每一步都要验证中间产物:有没有生成 .jarjava -jar 能否手动跑通?VS Code 终端的 PATH 和你平时用的终端是否一致?这些细节比插件列表重要得多。


# linux  # python  # java  # vscode  # js  # json  # windows  # app  # 字节  # 工具  # mac  # ai  # kotlin  # maven  # jvm  # sdkman  # for  # include  # class  # internal  # macos  # gradle  # 都要  # 找不到  # 和你  # 右键  # 自动识别  # 得多  # 更高  # 不存在  # 到你  # 不带 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  桂林网站制作公司有哪些,桂林马拉松怎么报名?  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  智能起名网站制作软件有哪些,制作logo的软件?  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  如何将凡科建站内容保存为本地文件?  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  如何在建站主机中优化服务器配置?  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  Android滚轮选择时间控件使用详解  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  如何在Windows环境下新建FTP站点并设置权限?  南京网站制作费用,南京远驱官方网站?  JavaScript如何实现错误处理_try...catch如何捕获异常?  高端企业智能建站程序:SEO优化与响应式模板定制开发  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  如何用狗爹虚拟主机快速搭建网站?  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  Firefox Developer Edition开发者版本入口  node.js报错:Cannot find module 'ejs'的解决办法  Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转  如何在阿里云虚拟服务器快速搭建网站?  北京专业网站制作设计师招聘,北京白云观官方网站?  什么是javascript作用域_全局和局部作用域有什么区别?  成都网站制作公司哪家好,四川省职工服务网是做什么用?  如何快速搭建个人网站并优化SEO?  音乐网站服务器如何优化API响应速度?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  如何在企业微信快速生成手机电脑官网?  Laravel如何使用Blade模板引擎?(完整语法和示例)  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  HTML 中动态设置元素 name 属性的正确语法详解  Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】  Laravel如何创建自定义中间件?(Middleware代码示例)  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  如何在阿里云ECS服务器部署织梦CMS网站?  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】  如何用西部建站助手快速创建专业网站?  Linux系统命令中screen命令详解  如何选择可靠的免备案建站服务器?  Bootstrap CSS布局之列表  Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  大连网站制作公司哪家好一点,大连买房网站哪个好?  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】