1

我在从供应商/宝石加载的 rails 3 应用程序中使用了几个本地宝石。下面是 Gemfile 中的一个示例:

gem 'foo', '1.3.9', :path => 'vendor/gems'

当我尝试运行测试(即 bundle exec rake test)或启动内置服务器(即 rails s)时,Rails 因“未初始化的常量 Foo (NameError)”而崩溃。只有本地加载的 gem 会导致此问题。运行“gem list”或“bundle exec gem list”会显示存在正确版本的 gem。关于为什么 Rails 没有正确加载这些 gem 的任何想法?

4

1 回答 1

1

路径不正确,应该是gem的完整路径。像这样

gem 'foo', '1.3.9', :path => 'vendor/gems/foo'

否则无法找到并加载。

于 2013-06-06T04:08:31.097 回答