0

如何在 Ruby 中安装不是 gem 的库?

我正在尝试使用graphy

在示例用法中,它说 to 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>'
4

3 回答 3

2

告诉 ruby​​ 使用-I标志查看当前目录:

ruby -I. my_script.rb

要查看 ruby​​ 加载路径,请puts $:在脚本顶部添加。

于 2011-11-03T11:03:13.600 回答
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$

在加载路径中明确指定当前目录可能会起到作用。

编辑:哎呀,我太晚了(:

于 2011-11-03T11:33:16.860 回答
0

在这种特殊情况下,作者使用 Jeweler 来管理他的 gemspec。我对 Jeweler 不是很熟悉,但是 AFAIR,您使用rake install. 您可能需要先生成一个版本号rake version:write MAJOR=0 MINOR=0 PATCH=1

于 2011-11-03T13:27:41.457 回答