0

我正在尝试为本地计算机上的现有 Rails 项目启动服务器,但出现以下错误。谁能解释我为什么会收到此错误以及如何解决?

    $ rails s
    /Users/tomcaflisch/Sites/mysite/refinerycms/ruby/1.9.1/gems/mysql2-0.3.11/lib/mysql2.rb:9:in `require': cannot load such file -- mysql2/mysql2 (LoadError)
        from /Users/tomcaflisch/Sites/mysite/refinerycms/ruby/1.9.1/gems/mysql2-0.3.11/lib/mysql2.rb:9:in `<top (required)>'
        from /Users/tomcaflisch/.rvm/gems/ruby-1.9.3-p0@global/gems/bundler-1.1.3/lib/bundler/runtime.rb:68:in `require'
    ...

这里有一些可能相关的输出来帮助找出问题:

$ which ruby
/Users/tomcaflisch/.rvm/rubies/ruby-1.9.3-p0/bin/ruby

$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.3.0]
4

1 回答 1

1

这可能是另一回事,但安全的是您的 Rails 应用程序找不到 mysql gem。

第一个建议是使用 ruby​​ 1.9.3 而不是 ruby​​ 1.9.1

但最快的解决方案应该是再次为项目安装所有 gem。

所以去你的网站,删除/Users/tomcaflisch/Sites/mysite/refinerycms/ruby/下的所有文件(这将删除包 Gems),删除Gemfile.lock,然后运行:bundle install

那应该可以解决问题;)

在此之前,您也可以尝试运行捆绑更新,这也可以解决问题。

于 2012-12-08T06:15:19.910 回答