我在
中安装了一个插件(称为XYZ)/usr/lib/ruby/site_ruby/1.8/XYZ
请注意它不是rubygem而是“原生”ruby sitelib库。现在
我已将此行添加到config / environment.rb:
config.gem "XYZ"
这里的问题是Rails没有加载插件。是否有强制从ruby_site目录加载的技巧? Rails 2.3.10
由于
答案 0 :(得分:2)
我仍然不确定你为什么需要这样做(我想有更好的方法),但如果这是你唯一的选择,那么这里就是......
与刚刚“必需”的宝石不同,Rails通过在插件的init.rb文件上运行eval
来加载插件(如果您感兴趣,请参阅here获取2.3.10)。 'site_ruby'文件夹位于Rails的加载路径中,但其中的文件将被视为普通库,而不是插件。
要更改此设置,您可以轻松地在应用配置中添加到Rails的加载路径:
config.plugin_paths << "/usr/lib/ruby/site_ruby/1.8"
我没有构建RPM软件包的经验,但如果它迫使您以如此脆弱的方式构建应用程序,那么它是否真的是分发它的最佳方式?只是一个想法! :)