1

认为这应该有效。

环境.rb

config.gem "hoptoad_notifer", :version => '=2.1.2'

已安装的 gem 列表:

$ gem list hoptoad_notifier

*** LOCAL GEMS ***

hoptoad_notifier (2.1.2)

rake 的输出:gems

$ rake gems
(in /rails/appdir)
 - [R] hoptoad_notifier = 2.1.2

I = Installed
F = Frozen
R = Framework (loaded before rails starts)

开箱:

$ rake gems:unpack
(in /rails/appdir)
/rails/appdir (master)
$
#  that is, no result; immediate return

为什么这个宝石不解包?该应用程序启动并且我可以正常运行rake hoptoad:test,所以它可以从系统 gem 加载。我只想将所有东西都卖掉以进行部署。

4

1 回答 1

2

这是一个 pre-rails 1.0 应用程序,我最近没有运行rake rails:update

我做到了,它添加了这一行:

# boot.rb
Rails::GemDependency.add_frozen_gem_path

这告诉 Rails 检查供应商/宝石是否有冻结的宝石或其他东西。

然后我可以看到 gem 已安装并按预期解压它:

$ rake gems
(in /rails/appdir)
- [I] hoptoad_notifier = 2.1.2

$ rake gems:unpack
(in /rails/appdir)
Unpacked gem: '/rails/appdir/vendor/gems/hoptoad_notifier-2.1.2'
于 2010-01-25T22:04:58.333 回答