bundler.require对我不起作用

时间:2014-01-05 17:11:59

标签: ruby bundler

根据Bundler网站,使用Bundler.require消除了在类顶部明确要求Gems的需要。具体来说,该网站说,

“如果你有很多依赖项,你可能想说”需要我的Gemfile中的所有gems“。为此,请在require'bundler / setup之后立即输入以下代码“:

Bundler.require(:default)"

当我这样做并删除我的类文件顶部的依赖项时,事情就会中断。例如,从应用程序类中删除以下语句:

"require hpricot"

会导致以下错误

NoMethodError: undefined method `Hpricot' for #<IndexBuilder:0x000000016365e0>

即使我的Rakefile说,

"Bundler.require(:default, environment.to_s)"

我在我的Gemfile中列出了Hpricot。

对我在这里做错了什么的想法?我正在调用我的Rakefile顶部的'require bundler/setup',因为他们说我应该这样做。

--- --- EDIT

感谢您的回复。我的Gem文件如下;我在这里删除了空格只是为了节省空间:

来源“https://rubygems.org

ruby​​'1.9.3'

gem'rake'

gem'require_all'

gem'ruby-progressbar'

gem'hpricot'

正在执行'require'的文件 -

要求'open-uri'

需要'hpricot'

类IndexBuilder

#presumes source是一个包含网络链接歌曲列表的网址。   def build(来源)     data = Array.new     fetch(source).search(“// a”)。每个都做| a |       song = Song.new(a.inner_html,a.to_s)       数据&lt;&lt;歌曲     结束     Index.new(数据)   端

def fetch(来源)     打开(来源){| f | Hpricot(f)}   端

私人:获取

0 个答案:

没有答案