如何将旧插件捆绑到Gemfile中

时间:2012-03-09 14:38:32

标签: ruby-on-rails plugins warnings bundler deprecated

我有一个rails应用程序,每当我启动服务器或rake时都会收到此警告。

DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/01/04/rails-3-2-0-rc2-has-been-released. (called from <top (required)> at /Users/Matt/Orchive/Orchive/config/environment.rb:5)

我知道我需要移出一个插件,但我不知道该怎么做。我去过链接,但它没有给出指示。

任何人都有这个问题,知道如何修复它吗?

2 个答案:

答案 0 :(得分:1)

你在使用heroku吗? Heroku添加了一些插件,这些插件是rails 2.3风格,因此您会收到此警告。他们说当rails 4.0发布时这些插件将正常工作。您也可以通过将此警告添加到development.rb或production.rb文件来关闭此警告:

::ActiveSupport::Deprecation.silenced = true

答案 1 :(得分:0)

我发现的最佳方法是here

我选择使它不是一个宝石部分,因为我需要能够在我的capistrano部署期间根据我正在部署的应用程序的风格打开/关闭插件。在我使用config.plugins指定要使用的插件之前。通过这种方法,我在config.before_configuration上使用了“require”。