>预期行为
在 VS 代码(或其他 IDE(中;
- 将断点添加到 [App Root]/config/application.rb 的第一行; require_relative"启动">
- 启动调试。
- 调试器应在断点处停止
实际行为
- 调试器继续而不停止
- 注意:任何进一步执行 Rails 应用程序的断点都无法停止执行。
笔记;
查看 https://github.com/Shopify/bootsnap/issues/93,我认为此问题的发生是由于以下因素的组合; - 新的 Ruby 2.5 功能"删除trace
指令"(https://bugs.ruby-lang.org/issues/14104( - Rails 5.2 包含引导宝石
注意:其他 IDE 中也出现了同样的问题; - 喷气脑; https://youtrack.jetbrains.com/issue/RUBY-20684 - 红宝石矿;https://github.com/ruby-debug/ruby-debug-ide/issues/139
我的环境
vscode-ruby
版本:0.18.0- 拼音版本:红宝石 2.5.1p57(2018-03-29 修订版 63029( [x86_64-达尔文17]
- 导轨版本:5.2.0
- Ruby-debug-ide 版本:0.6.1
- 降级版本:0.2.2
- VS 代码版本: 1.22.2 (1.22.2(
- 操作系统: macOS 10.13.4 (17E199(
- 硬件(可选(:MacBook Pro(13 英寸,2012 年中(和 MacBook(13 英寸,2010 年中(
- 编辑 [app root]/config/boot.rb
替换线;
require 'bootsnap/setup' # Speed up boot time by caching expensive operations.
跟;
unless ( (('2.5.0'..'2.5.1').include? RUBY_VERSION) && defined?(Debugger) ) require 'bootsnap/setup' # Speed up boot time by caching expensive operations. end
铌:
看起来底层的 Ruby 问题将在 2.5.2 (ruby/ruby@b85b10c( 中修复。
鉴于该问题仅存在于 Ruby 版本 2.5.0 到 2.5.1 上,上述解决方法应该适用于所有受影响的版本,而忽略所有其他版本。(即它应该在所有配置中正常工作(