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

王柳  金牌会员 | 2025-1-14 08:12:30 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 882|帖子 882|积分 2646

配景

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

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


  • WSL
  • Ruby
你可能会疑问就这两个插件就够了吗?回复:是的
   Ruby插件(Shopify公司出品,就是推出YJIT的那个公司),附带两个插件Ruby LSP和Ruby Sorbet(这个插件暂时用不到,可以先装上)
  配置插件

下载上面我们提到的插件后,配置基本采用默认就可以了。但是要到达调试Ruby on Rails工程的目的,还必要配置一个launch.json文件
   点击运行->添加配置->选择Ruby LSP Debugger client,之后就会主动生成一个launch.json文件
  编辑launch.json文件:
  1. {
  2.   // 使用 IntelliSense 了解相关属性。
  3.   // 悬停以查看现有属性的描述。
  4.   // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
  5.   "version": "0.2.0",
  6.   "configurations": [
  7.     {
  8.       "type": "ruby_lsp",
  9.       "name": "Debug script",
  10.       "request": "launch",
  11.       "program": "bin/rails s -p 3003"
  12.     },
  13.     {
  14.       "type": "ruby_lsp",
  15.       "name": "Debug test",
  16.       "request": "launch",
  17.       "program": "ruby -Itest ${relativeFile}"
  18.     },
  19.     {
  20.       "type": "ruby_lsp",
  21.       "name": "Attach debugger",
  22.       "request": "attach"
  23.     }
  24.   ]
  25. }
复制代码
必要修改就是第一个 program 属性,改成Ruby on Rails工程下面的bin目次下的rails程序,指定端口为3003,默认启动就是debug模式。
假如调试不能正常启动,可能是少了gem包:“debug”,在 Gemfile 文件中添加如下:
  1. group :development, :test do
  2.   # See https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem
  3.   gem "debug", platforms: %i[ mri windows ], require: "debug/prelude"
  4. end
复制代码
配置好以后,就可以按快捷键 F5 启动调试,Shift + F5 制止调试,默认格式化工具为RubyCop,这个工具Rails工程都是默认自带的,这样就可以格式化代码,并提示代码题目。
好了,之后就可以体验和Rubymine一样的开发体验了。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

王柳

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表