[英]Ruby Gem (EventMachine) Will Not Install Using the Bundler GEM
[英]How to get location of gem using bundler or Rails from within Ruby?
我需要从Rails应用程序中获取gem的当前工作目录。
我目前正在使用
`bundle show foo`.strip
这在我的环境中效果很好,但是:
所以我想在没有调用子shell的情况下做到这一点。
Bundler的RDOC没有帮助。 您曾经能够在Rails 2中从Rails本身获取此类信息,但看起来Rails 3允许Bundler处理它。
如果gem位于Gemfile / Gemfile.lock中,则其路径将出现在$LOAD_PATH
全局变量中。 你可以利用这个事实:
$:.grep(/activerecord/).first
$:
与$LOAD_PATH
相同。 你可以使用其中之一。
另一种方法:
Bundler.load.specs.find{|s| s.name == 'activerecord' }.try(:full_gem_path)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.