Ruby如何查找gem?

3
我已经安装了一个名为CSApi的gem。 ruby -e 'require "CSApi"' 运行正常。 gem env显示/Library/Ruby/Gems/2.0.0在我的GEM PATH中,并且有一个文件/Library/Ruby/Gems/2.0.0/gems/CSApi-0.0.5/lib/csapi.rb 我认为这就是当我需要CSApi时加载的文件。 主要问题: Ruby如何找到这个文件?整个目录结构是否都会被遍历以查找名为csapi.rb的文件? 附加问题:还有一个文件/Library/Ruby/Gems/2.0.0/gems/CSApi-0.0.5/examples/example.rb,作为gem的一部分安装。可以在不键入完整路径的情况下调用此ruby脚本吗?

1
我认为你可能会发现这篇文章很有用:http://www.sitepoint.com/rubygems-slow/ - tonchis
1个回答

1
您可以通过键入来查看所需遍历的路径。
ruby -e 'puts $:'

好的,抱歉之前不完整,这应该会显示宝石路径:

ruby -r rubygems -e "p Gem.path"

/Library/Ruby/Gems 没有列出来,实际上 ruby -e 'puts $:' | xargs -I{} find {} -iname 'CSApi*' 什么也没有返回。 - matthiash

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接