要求将 gem 撬入 ruby 脚本导致错误
Requiring pry gem into ruby script causes error
我正在使用 ruby 版本 2.3.3p222
这是我的 Gemfile:
# Gemfile
source 'https://rubygems.org'
gem 'pry'
I 运行 bundle
这是结果 Gemfile.lock
Gemfile.lock
GEM
remote: https://rubygems.org/
specs:
coderay (1.1.2)
method_source (0.9.2)
pry (0.12.2)
coderay (~> 1.1.0)
method_source (~> 0.9.0)
PLATFORMS
ruby
DEPENDENCIES
pry
BUNDLED WITH
1.15.1
然后我通过 ruby my_report.rb
运行 一个 ruby 脚本(这个脚本与 Gemfile
和 Gemfile.lock
位于同一目录中)。 my_report.rb
文件中只有这个:
require 'pry'
这是错误:
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.
/Users/<user>/.rvm/gems/ruby-2.3.3/gems/pry-rescue-1.4.5/lib/pry-rescue.rb:15: warning: method BaseHelpers#windows? is deprecated. Use Pry:Helpers::Platform.windows? instead
/Users/<user>/.rvm/gems/ruby-2.3.3/gems/pry-stack_explorer-0.4.9.2/lib/pry-stack_explorer.rb:128:in `<top (required)>': undefined method `before_command' for #<Pry::CommandSet:0x007fccdcf0b1e8> (NoMethodError)
问题:我错过了什么?我怎样才能在 pry
中正确地要求我的 ruby 脚本以便我可以设置断点?
最终对我有用的是我刚刚卸载了通过 gem uninstall
安装的所有 pry
版本。然后:在我的 gemfile 中我指定了以前版本的 0.11.3
:
# Gemfile
source 'https://rubygems.org'
gem 'pry', '0.11.3'
我做了 bundle install
然后 运行 我的 ruby 脚本,这对我有用。
我正在使用 ruby 版本 2.3.3p222
这是我的 Gemfile:
# Gemfile
source 'https://rubygems.org'
gem 'pry'
I 运行 bundle
这是结果 Gemfile.lock
Gemfile.lock
GEM
remote: https://rubygems.org/
specs:
coderay (1.1.2)
method_source (0.9.2)
pry (0.12.2)
coderay (~> 1.1.0)
method_source (~> 0.9.0)
PLATFORMS
ruby
DEPENDENCIES
pry
BUNDLED WITH
1.15.1
然后我通过 ruby my_report.rb
运行 一个 ruby 脚本(这个脚本与 Gemfile
和 Gemfile.lock
位于同一目录中)。 my_report.rb
文件中只有这个:
require 'pry'
这是错误:
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.
/Users/<user>/.rvm/gems/ruby-2.3.3/gems/pry-rescue-1.4.5/lib/pry-rescue.rb:15: warning: method BaseHelpers#windows? is deprecated. Use Pry:Helpers::Platform.windows? instead
/Users/<user>/.rvm/gems/ruby-2.3.3/gems/pry-stack_explorer-0.4.9.2/lib/pry-stack_explorer.rb:128:in `<top (required)>': undefined method `before_command' for #<Pry::CommandSet:0x007fccdcf0b1e8> (NoMethodError)
问题:我错过了什么?我怎样才能在 pry
中正确地要求我的 ruby 脚本以便我可以设置断点?
最终对我有用的是我刚刚卸载了通过 gem uninstall
安装的所有 pry
版本。然后:在我的 gemfile 中我指定了以前版本的 0.11.3
:
# Gemfile
source 'https://rubygems.org'
gem 'pry', '0.11.3'
我做了 bundle install
然后 运行 我的 ruby 脚本,这对我有用。