如何在Ruby中安装不是gem的库?
我正在尝试使用graphy。
在示例用法中,它对require 'graphy'
说,但即使我的ruby文件与graphy.rb
在同一目录中,我也会收到以下错误:
<internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- graphy.rb (LoadError)
from <internal:lib/rubygems/custom_require>:29:in `require'
from foo.rb:1:in `<main>'
答案 0 :(得分:2)
告诉ruby使用-I
标志查看当前目录:
ruby -I. my_script.rb
要查看ruby加载路径,请在脚本顶部添加puts $:
。
答案 1 :(得分:1)
一切正常。我在下面贴了我的IRB试试。
Yasky$ cd Projects/ruby/bruce-graphy-70f213b/lib/
lib Yasky$ irb
ruby-1.8.7-p352 :001 > require 'graphy'
=> true
ruby-1.8.7-p352 :002 > dg = Graphy::Digraph[1,2, 2,3, 2,4, 4,5, 6,4, 1,6]
=> Graphy::DirectedGraph[Graphy::Arc[2,3,nil], Graphy::Arc[1,6,nil], Graphy::Arc[2,4,nil], Graphy::Arc[4,5,nil], Graphy::Arc[1,2,nil], Graphy::Arc[6,4,nil]]
ruby-1.8.7-p352 :003 > exit
lib Yasky$
在加载路径中明确指定当前目录可能会有所帮助。
编辑:哎呀,我来不及(:
答案 2 :(得分:0)
在这种特殊情况下,作者使用珠宝商来管理他的gemspec。我不熟悉珠宝商,但是AFAIR,你生成并安装了一个rake install
的宝石。您可能需要先使用rake version:write MAJOR=0 MINOR=0 PATCH=1
生成版本号。