如何以编程方式获取 Ruby 的标准库(或系统 gem)路径?
How to programmatically get Ruby's standard library (or system gem) path?
我需要以编程方式找到 gem 规范路径和我系统上安装的 Ruby 的标准库(或系统 gem)路径。
我很容易找到第一个:
puts Gem.default_specifications_dir
=> "/home/user/.rvm/rubies/ruby-x.y.z/lib/ruby/gems/x.y.a/specifications/default"
我怎样才能找到后者?在我的例子中,它应该 return 以下之一(两者都可以接受):
=> /home/user/.rvm/rubies/ruby-x.y.z/lib/ruby/x.y.a
=> /home/user/.rvm/rubies/ruby-x.y.z/lib/ruby/x.y.a/psych
Gem 库有一个常量:Gem::RUBYGEMS_DIR
我需要以编程方式找到 gem 规范路径和我系统上安装的 Ruby 的标准库(或系统 gem)路径。
我很容易找到第一个:
puts Gem.default_specifications_dir
=> "/home/user/.rvm/rubies/ruby-x.y.z/lib/ruby/gems/x.y.a/specifications/default"
我怎样才能找到后者?在我的例子中,它应该 return 以下之一(两者都可以接受):
=> /home/user/.rvm/rubies/ruby-x.y.z/lib/ruby/x.y.a
=> /home/user/.rvm/rubies/ruby-x.y.z/lib/ruby/x.y.a/psych
Gem 库有一个常量:Gem::RUBYGEMS_DIR