您已经激活了构建器

时间:2012-10-22 14:09:18

标签: ruby-on-rails passenger gemfile

加载我的Rails应用程序时收到以下错误消息:

You have already activated builder 3.0.4, but your Gemfile requires builder 3.0.3. Consider using bundle exec.

堆栈追踪:

0   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.10/lib/bundler/runtime.rb    31  in `block in setup'
1   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.10/lib/bundler/spec_set.rb   12  in `block in each'
2   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.10/lib/bundler/spec_set.rb   12  in `each'
3   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.10/lib/bundler/spec_set.rb   12  in `each'
4   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.10/lib/bundler/runtime.rb    17  in `setup'
5   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.10/lib/bundler.rb    107 in `setup'
6   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/utils.rb  326 in `prepare_app_process'
7   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/classic_rails/application_spawner.rb  176 in `block in initialize_server'
8   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/utils.rb  563 in `report_app_init_status'
9   /usr/local/ruby/1.9.2/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/classic_rails/application_spawner.rb  174 in `initialize_server'

似乎passenger已激活3.0.4,但我的应用程序Gemfile仍然有3.0.3。我可以在我的Gemfile中添加gem 'builder', '3.0.4'但是当新版本出来时它会再次发生。我怎样才能防止这种情况发生?

2 个答案:

答案 0 :(得分:0)

这通常发生在使用RVM时,或者只是系统默认的单独版本的ruby。

配置RVM以向乘客提供用于开发的相同红宝石(以及捆绑器安装宝石的地方)。

https://rvm.io/integration/passenger/

答案 1 :(得分:0)

我不确定这种优雅的方式我是否正在使用binstub 运行:

bundle install --binstubs
export PATH=./bin:$PATH

您可以在http://blog.davidchelimsky.net/2011/07/18/stop-typing-bundle-exec/

了解更多信息