Требование вставить драгоценный камень в скрипт Ruby вызывает ошибку

#ruby #pry

#ruby #извлекать

Вопрос:

Я использую версию ruby 2.3.3p222

Вот мой Gemfile:

 # Gemfile
source 'https://rubygems.org'

gem 'pry'
  

Я запускаю 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 через ruby my_report.rb (этот скрипт находится в том же каталоге, что и 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)
  

Вопрос: Чего мне не хватает? Как я могу правильно запросить in pry в моем скрипте ruby, чтобы я мог установить точки останова?

Ответ №1:

Что в конечном итоге сработало для меня, так это то, что я просто удалил все pry версии, которые я установил через gem uninstall . Затем: в моем gemfile я указал предыдущую версию 0.11.3 :

 # Gemfile
source 'https://rubygems.org'
gem 'pry', '0.11.3'
  

Я сделал bundle install , а затем запустил свой скрипт ruby, и это сработало для меня.