2013-02-03 66 views
1

我找到了this question,但他特別說了沒有命令行。那麼我確實需要命令行。我看我可以運行命令行獲取寶石路徑

$ gem which jekyll 
/usr/lib/ruby/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll.rb 

但是我寧願像

$ foo jekyll 
/usr/lib/ruby/gems/1.9.1/gems/jekyll-0.12.0 

其中foo是神祕的命令。如果需要,我可以解析gem which,但更喜歡更優雅的東西。請注意,bundle是不可能的。

+1

'別名富='寶石which'' –

回答

10

如果您使用的是Bundler,bundle show <gem name>可以完成您要做的事情。我會研究非Bundler。

+1

感謝這一點,非常有幫助 – lfender6445

1

由於gem它僅僅是Gem::GemRunner一個Ruby腳本包裝和你想獲得命令的默認設置中沒有實現的功能,我建議你創建自己的Gem::Command

這真的很簡單,再加上你可以實現儘可能多的附加功能。

希望它有幫助。

1

是有益的獲得與庫文件的位置:

$ gem which "gemname"