2

我有一个运行旧版本 Rails (2.2.2) 和 Passenger 的应用程序,我使用 Ruby Enterprise Edition 1.8.7 启动并运行。然而,我很快发现旧版本的 Rails 和 Ruby 1.8.7 之间存在一些不兼容,并决定降级到 REE 1.8.6。但是,现在应用程序无法以以下方式启动LoadError

no such file to load -- bundler

我假设某些路径设置不正确,但我不确定在哪里看。有什么建议么?

4

2 回答 2

2

在把我的头撞在墙上之后,我意识到这是因为 /opt/ruby-enterprise-... 中的文件不是组可读的(所以我认为运行 Apache 的用户没有访问权限)。

于 2010-10-04T22:18:32.393 回答
1

我有同样的错误,但有不同的解决方案。

在我的 deploy.rb 文件中有一个块,如:

set :default_environment, {
  'PATH' => "/usr/local/rvm/gems/ruby-1.9.2-p0/bin:/usr/local/rvm/rubies/ruby-1.9.2-p0//bin:$PATH",
  'RUBY_VERSION' => 'ruby 1.9.2',
  'GEM_HOME'     => '/usr/local/rvm/gems/ruby-1.9.2-p0',
  'GEM_PATH'     => '/usr/local/rvm/gems/ruby-1.9.2-p0',
  'BUNDLE_PATH'  => '/usr/local/rvm/gems/ruby-1.9.2-p0'  # If you are using bundler.
}

我将这些路径指向新安装的 ruby​​(在服务器上),并且它有效。

于 2012-01-31T05:33:33.207 回答