我在Rails 2上有一个奇怪的旧越野车项目。
它在config / environment.rb中有gem依赖项,如
config.gem "andand"
config.gem "json"
config.gem "chronic"
config.gem "mini_fb"
所有这些宝石都位于vendor / gems /
中andand-1.3.3/
chronic-0.6.7/
json-1.7.3/
mini_fb-1.1.7/
rbet-1.0.3/
redis-3.0.1/
responsys_client-0.0.1/
但是当我用这个应用程序启动unicorn服务器时,它总是抱怨它无法找到这个宝石。为什么呢?
更新
从供应商/宝石轨道构建和安装宝石后,仍然抱怨它。
我将mini_fb gem调整为自定义mini_fb_custom gem。将gemspec和其他文件中的所有引用从mini_fb更改为mini_fb_my,安装它并在gem list
中显示为mini_fb_my。但它无法从config / environment.rb加载并抱怨
Missing these required gems:
mini_fb_my >= 0
也许我应该将lib / mini_fb.rb重命名为lib / mini_fb_my.rb 我会检查一下。
更新2
是的,重命名文件摇滚!
答案 0 :(得分:1)
您仍需要从这些文件夹中安装它们,否则独角兽将不知道在哪里查找它们。
只需安装该目录中的宝石,独角兽就应该选择它们。
<强>更新强>
您可以使用此命令在本地安装您的宝石
gem install --local vendor/gems/gem/gem-name.gem
在更新版本的rails上,您只需在Gemfile上指定路径
gem "gem-name", path: "path/to/gem"
答案 1 :(得分:0)
我的建议:用bundler替换过时的gem
配置(它适用于rails 2,应该在他们的网站上提供rails 2的教程)。
通过gem
命令进行配置,冻结宝石等只是a **中的痛苦,当我使用它时(很久以前)它似乎有点儿麻烦。