2009-10-12 51 views
2

我有一堆config.gem语句在我的environment.rb文件中:config.gem需要gem?

config.gem "fastercsv", :version => "~>1.5.0" 
    config.gem "parseexcel", :version => "~>0.5.2" 
    config.gem "geokit", :version => "~>1.4.1" 
    config.gem "facebooker", :version => "~>1.0.50" 

...

如果我做“耙宝石:安装”然后我得到这个问题: 耙中止! 没有这样的文件加载 - fastercsv

嗯...我知道有没有这样的文件加载,因为我想安装它。我怀疑这可能是由于我的要求的位置。我有一个模块在我的lib目录:

module SmartContactsImporter 

    require 'fastercsv' 
    require 'parseexcel' 
... 

也许Rails不喜欢我需要的宝石有,但似乎很傻,因为没有什么错有你的模块依赖于一个宝石。关于如何解决这个问题的任何想法?

UPDATE 原来,这个问题还发生在mechanize,geokit,并且该列表正在继续。有点奇怪的是,config.gem在开箱时并不容易。仅供参考我不会冻结我的宝石。

回答

2

如果您在SmartContactsImporter中忽略了该要求,则该功能应起作用(config.gem "fastercsv"将为您执行要求)。

你可以解决它时,需要在environment.rb有一个require

begin 
    require "rack/cache" 
rescue LoadError 
    STDERR.puts "not loaded rack/cache: #{$!}" 
end 

这是丑陋的,但它确实做的伎俩。

0

你不应该要求你的模块内,config.gem将需要你。

还有一个与config.gem相关的问题,它将尝试要求在安装gem时尚未安装的依赖gem,但目前看起来并非如此。

相关问题