2013-07-29 46 views
1

我有一个很小的,简单的(即非Rails)Ruby项目,我试图去使用addressable宝石。这里是发生了什么:Ruby脚本不能使用宝石

$ ruby -r rubygems sign.rb 
sign.rb:5:in `require': cannot load such file -- addressable (LoadError) 
    from sign.rb:5:in `<main>' 

这是Gemfile

source "http://rubygems.org" 

gem "addressable", "~> 2.3.2" 

这是sign.rb

#!/usr/bin/env ruby 

require "rubygems" 
require "bundler/setup" 
require "addressable" 

这一切就是这么简单。为什么不想使用宝石?

+0

您是否运行'bundle install'呢? –

+0

是的,我是diiiiiiiiiid。 –

回答

2

有没有addressable文件,你可以要求,只是addressable directory。你必须要求你想要的目录,例如:

require 'addressable/uri' 
uri = Addressable::URI.parse("http://example.com/path/to/resource/") 
# etc ... 

require "addressable/template" 
template = Addressable::Template.new("http://example.com/{?query*}/") 
# etc... 

退房的addressable docs下的特定文件。

+0

就是这样。谢谢。 –

0

您是否已使用$ bundle install安装了该宝石?

这将获取您的Gemfile中指定的宝石,并将它们提供给工作目录。

+0

是的,我做到了。 –

+0

安装成功了吗?你尝试过使用'$ bundle exec'吗? http://bundler.io/v1.3/man/bundle-exec.1.html编辑:没关系,看起来像马特得到它。 –