2

帮助!!我需要捆绑一个 gem,否则已发布的客户网站将死机

    MacBook-Pros-MacBook-Pro:pn 
macbookpro$ sudo ruby script/generate sanitize
Missing the Rails 2.3.5 gem. Please `gem install -v=2.3.5 rails`, update your RAILS_GEM_VERSION setting in config/environment.rb for the Rails version you do have installed, or comment out RAILS_GEM_VERSION to use the latest version installed.
4

1 回答 1

8

您可以按照消息告诉您的方式在机器上手动安装 gem,但是由于您询问如何捆绑 gem,这可能不是您要寻找的。

要捆绑 Rails gems,请在安装了 gems 的机器(可能是您的开发机器)上运行以下命令:

rake rails:freeze:gems

这会将 Rails gem 解压到 vendor/rails 中。然后是添加和提交宝石的问题。

冻结/供应应用程序所需的所有 gem(如 environment.rb 中所定义):

rake gems:unpack:dependencies

如果您使用像 Nokogiri 这样的 gem,其中包含需要针对其运行的环境进行编译的代码,那么您必须多做一些。出售后,运行

rake gems:build

那应该为你做。请注意,这最后一步需要在需要运行应用程序的机器上运行——在这种情况下,您不能像使用纯 Ruby gem 那样仅依赖于在本地执行它并提交您的更改。

有关详细信息,请参阅http://reborg.tumblr.com/post/99668398/rails-gems-unpack-native 。

于 2010-03-25T10:57:34.900 回答