Ruby on rails 从Gem获取Ruby项目根路径

Ruby on rails 从Gem获取Ruby项目根路径,ruby-on-rails,ruby,rubygems,Ruby On Rails,Ruby,Rubygems,我已经开始自己制作宝石了 现在,从我的Gem中,我需要从ruby项目中获取根路径 多谢各位 是的,您可以使用gem list命令 这里有一个例子 $ gem list green_shoes -d *** LOCAL GEMS *** green_shoes (1.1.374) Author: ashbb Homepage: http://github.com/ashbb/green_shoes Installed at: d:/Ruby/lib/ruby/gems/

我已经开始自己制作宝石了

现在,从我的Gem中,我需要从ruby项目中获取根路径


多谢各位

是的,您可以使用gem list命令

这里有一个例子

$ gem list green_shoes -d

*** LOCAL GEMS ***

green_shoes (1.1.374)
    Author: ashbb
    Homepage: http://github.com/ashbb/green_shoes
    Installed at: d:/Ruby/lib/ruby/gems/2.3.0

    Green Shoes
通过使用红宝石,可以这样做

spec = Gem::Specification.find_by_name("green_shoes")
puts spec.gem_dir

# d:/Ruby/lib/ruby/gems/2.3.0/gems/green_shoes-1.1.374
查看此论坛: 从我对你问题的理解来看,你想要的是项目的路径,而不是创业板本身所在的路径

class MyGem

   def self.get_working_dir
     Dir.pwd
   end

end

> MyGem.get_working_dir
> /Users/your_name/my_project_directory

这个解决方案最终帮助我制作了一个Gem,在那里我必须迭代一个项目的文件树

只是澄清一下,您需要从gem中使用gem访问项目的根路径吗?该项目是否始终是Rails应用程序?如果是Rails引擎,则可以使用
Rails.root
Jeremywoertink。是的,我需要从我的gem中访问使用我的gem的rails项目的根路径。谢谢peter,但是我需要从我的gem中访问使用我的gem的rails项目的根路径。