以下の内容はhttps://takuya-1st.hatenablog.jp/entry/2014/07/12/213324より取得しました。


require されるgem パッケージのフルパス(場所)を取得する

require した時のパッケージが実体どこにあるか知りたい時があります。

たとえば、ライブラリの本体パスを知ることでmanual やサンプルにアクセすることが可能だからです。

Gemのファイルの場所を調べよう。

取得方法

Gem::Specification.find_by_path( "gem 名" ).full_gem_path

実行サンプル

(%w/bitly airplay flickr git oauth2 sinatra/).map{|e|
  path =  Gem::Specification.find_by_path( e ).full_gem_path
  puts "#{e.ljust(10)} : #{path}"
}
takuya@rena:~/Desktop$ ruby test.rb
bitly      : /Users/takuya/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/bitly-0.10.1
airplay    : /Users/takuya/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/airplay-1.0.2
flickr     : /Users/takuya/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/flickr-1.0.2
git        : /Users/takuya/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/git-1.2.6
oauth2     : /Users/takuya/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/oauth2-0.9.3
sinatra    : /Users/takuya/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/sinatra-1.4.5

ただし

gem パッケージの実態に限ります。標準添付ライブラリと組み込みオブジェクトは gem 管理対象外なのでGem::specification で取ることは出来ない。

ドキュメントが欲しいなら

ri Mechanize

でも可能です。

参考資料

http://docs.ruby-lang.org/ja/2.1.0/class/Gem=3a=3aSpecification.html#I_FULL_GEM_PATH




以上の内容はhttps://takuya-1st.hatenablog.jp/entry/2014/07/12/213324より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14