使用VSCode搭建Ruby on Rails集成开发环境

目录

背景

在windows平台下开发Ruby on Rails,之前使用的IDE是Rubymine,但是发现激活码失效了,于是怀着折腾的心思在VSCode上搭建一下Ruby on Rails集成开发环境,后来搭建好了之后,发现使用起来非常不错,体验不输Rubymine,果断记录一下自己的折腾过程,也给后来者福音。

选择插件

在windows平台下开发Ruby应用程序,建议采用WSL(Windows Subsystem for Linux),因为bundle一些第三方gem包,在Linux下兼容性好,避免一些麻烦。所以我们需要第一个插件是WSL。第二个插件是Ruby。

你可能会疑问就这两个插件就够了吗?回答:是的

Ruby插件(Shopify公司出品,就是推出YJIT的那个公司),附带两个插件Ruby LSP和Ruby Sorbet(这个插件暂时用不到,可以先装上)

配置插件

下载上面我们提到的插件后,配置基本采用默认就可以了。但是要达到调试Ruby on Rails工程的目的,还需要配置一个launch.json文件

点击运行->添加配置->选择Ruby LSP Debugger client,之后就会自动生成一个launch.json文件

编辑launch.json文件:

javascript 复制代码
{
  // 使用 IntelliSense 了解相关属性。 
  // 悬停以查看现有属性的描述。
  // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    {
      "type": "ruby_lsp",
      "name": "Debug script",
      "request": "launch",
      "program": "bin/rails s -p 3003"
    },
    {
      "type": "ruby_lsp",
      "name": "Debug test",
      "request": "launch",
      "program": "ruby -Itest ${relativeFile}"
    },
    {
      "type": "ruby_lsp",
      "name": "Attach debugger",
      "request": "attach"
    }
  ]
}

需要修改就是第一个 program 属性,改成Ruby on Rails工程下面的bin目录下的rails程序,指定端口为3003,默认启动就是debug模式。

如果调试不能正常启动,可能是少了gem包:"debug",在 Gemfile 文件中添加如下:

bash 复制代码
group :development, :test do
  # See https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem
  gem "debug", platforms: %i[ mri windows ], require: "debug/prelude"
end

配置好以后,就可以按快捷键 F5 启动调试,Shift + F5 停止调试,默认格式化工具为RubyCop,这个工具Rails工程都是默认自带的,这样就可以格式化代码,并提示代码问题。

好了,之后就可以体验和Rubymine一样的开发体验了。

相关推荐
skywalk816313 小时前
发布vscode插件到 VS Code 市场流程
ide·vscode·编辑器
牙牙要健康14 小时前
Windows 下为 VSCode 配置 Anaconda:从零安装 Python 环境到完整配置教程
windows·vscode·python
红石程序员15 小时前
破解MyEclipse
java·ide·myeclipse
蚂蚁不吃土&16 小时前
VSCode 搜索显示补全
vscode
nuoyigui988918 小时前
vscode中常用插件介绍xiaojie
ide·vscode·编辑器
不吃土豆的马铃薯19 小时前
5.SGI STL 二级空间配置器 _S_chunk_alloc核心函数解析
开发语言·c++·vscode·c·内存池
陳103019 小时前
Linux:工具Vscode的简单介绍
ide·vscode·编辑器
ChampaignWolf20 小时前
VSCode Copilot 也能支持其他OpenAI兼容接口啦,可以使用其他模型(DeepSeek、Kimi、Qwen)和第三方转发API
ide·vscode·编辑器
XX風20 小时前
VSCode + CMake + C++:配置文件体系完整说明
c++·ide·vscode
nebula-AI20 小时前
VSCode SFTP 同步流程指南
ide·vscode·云计算·编辑器·ssh