1

我正在使用 Rails 4.1.6 制作一个相当简单的 Rails 应用程序。最初,我使用 Ruby 版本 1.9.3(这是我用于另一个项目的版本,并且这个 Ruby 版本被设置为默认版本),但在应用程序进行到一半时,我决定将 Ruby 版本更改为最新的 2.1.3(rvm use 2.1.3)。Ruby版本更改后,我重新捆绑了。

出于调试目的,我添加了 pry,因为调试器不适用于最新版本的 Ruby:

宝石文件:

group :development, :test do
  gem 'pry-rails'
  gem 'pry-byebug'
end

现在每次我尝试进入 rails 控制台(rails c),我都会收到以下错误:

Could not find byebug-3.5.1 in any of the sources

这很奇怪,因为捆绑后在控制台中打印的 gems 列表包含以下内容:

Using byebug 3.5.1
<...>
Using pry 0.10.1
Using pry-byebug 2.0.0
Using pry-rails 0.3.2

和命令bundle show byebug

返回:

/home/<my home directory>/.rvm/gems/ruby-2.1.3/gems/byebug-3.5.1

我尝试bundle update删除 Gemfile.lock 并重新捆绑,但错误仍然存​​在。你能建议如何解决它吗?

4

1 回答 1

1

幸运的是,我在这里找到了答案。

显然,Rails 4.1 使用了一种叫做“弹簧”的东西。我不知道它们是什么,但似乎它们干扰了 Rails 控制台。在我杀死弹簧后,控制台开始工作。

看起来像黑魔法。如果有人能解释这些弹簧是什么以及它们为什么阻止 Rails 控制台启动,我将非常感激。

于 2014-10-05T22:09:59.270 回答