是否可以使用代码知道 Ruby 中类的路径是什么?

Mat*_*lva 1 ruby

我想知道使用代码定义类的位置,例如:

Car.path
=> lib/car.rb
Run Code Online (Sandbox Code Playgroud)

是否可以?

cre*_*mno 6

如果您使用的是 2.7,则可以调用Module#const_source_location

Object.const_source_location(:Set) # => ["C:/ruby/lib/ruby/2.7.0/set.rb", 70]
Run Code Online (Sandbox Code Playgroud)