我正在使用乘客和apache将应用部署到生产中。我在同一台服务器上部署了多个应用程序而没有任何问题。但是,出于某种原因,我遇到了这个应用程序的问题。
当我运行捆绑时,我收到了很多我以前从未见过的警告:
WARNING: #<ArgumentError: Illformed requirement ["#<YAML::Syck::DefaultKey:0x7fcbdc2ce610> 1.6.0"]>
# -*- encoding: utf-8 -*-
Gem::Specification.new do |s|
s.name = %q{bson_ext}
s.version = "1.6.0"
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
s.authors = ["Mike Dirolf"]
s.date = %q{2012-02-22}
s.description = %q{C extensions to accelerate the Ruby BSON serialization. For more information about BSON, see http://bsonspec.org. For information about MongoDB, see http://www.mongodb.org.}
s.email = %q{mongodb-dev@googlegroups.com}
s.extensions = ["ext/cbson/extconf.rb"]
s.files = ["Rakefile", "bson_ext.gemspec", "ext/cbson/extconf.rb", "ext/cbson/bson_buffer.c", "ext/cbson/cbson.c", "ext/cbson/encoding_helpers.c", "ext/cbson/bson_buffer.h", "ext/cbson/encoding_helpers.h", "ext/cbson/version.h"]
s.homepage = %q{http://www.mongodb.org}
s.require_paths = ["ext"]
<SNIP>
<SNIP>
Using bson (1.6.0)
Installing bson_ext (1.6.0) with native extensions
Using bundler (1.0.22)
Using coffee-script-source (1.2.0)
Using execjs (1.3.0)
Using coffee-script (2.2.0)
Using rack-ssl (1.3.2)
Using json (1.6.5)
Using rdoc (3.12)
Using thor (0.14.6)
Using railties (3.2.2)
Using coffee-rails (3.2.2)
Using geoip_city (0.2.0)
Using jquery-rails (2.0.1)
Using libv8 (3.3.10.4)
Installing mongo (1.6.0)
Using mongoid (2.4.6)
Using rails (3.2.2)
Using sass (3.1.15)
Using sass-rails (3.2.4)
Using therubyracer (0.9.10)
Using uglifier (1.2.3)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
虽然当我去我的应用程序时看起来我的宝石被捆绑了但是我遇到了乘客错误。
任何人都知道可能会发生什么?
提前致谢。
答案 0 :(得分:1)
显然它是一个bug,其中ruby mongo驱动程序1.6.0使用较旧的RubyGems版本。它已经固定,将在1.6.1(应该已经在几天前发布,我想现在将是任何一天)。
在此期间,修补你的GemFile
(希望你没有那些1.6.0樱桃......):
gem 'bson', '< 1.6.0'
gem 'bson_ext', '< 1.6.0'
gem 'mongo', '< 1.6.0'
HTH