【发布时间】:2012-10-22 14:09:18
【问题描述】:
加载我的 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',但是当新版本出来时它会再次发生。我怎样才能防止这种情况发生?
【问题讨论】:
-
“我收到以下错误信息” ... 当做 what?
-
“应用程序无法启动”来自乘客的消息。当应用程序启动失败时会显示此消息。
-
如果你不更新乘客,也不改变你的 gemfile,你不应该有冲突。指定 gem 的确切补丁值将始终强制它使用该版本。
-
@agmcleod 这是个好习惯吗?
-
好吧,您不想随意更改生产软件。如果有重要的修复,您需要首先在临时服务器中进行设置,确保它正常工作并在生产服务器上手动更新内容。我的意思是在你告诉它之前它不会更新。
标签: ruby-on-rails passenger gemfile