问题
Is there any command either in debugger
or ruby-debug
to get a list of all gems and/or plugins loaded in memory for a Rails process? I understand only the 'require
' gems are loaded but I would like to quickly see what got loaded during runtime.
回答1:
This should get you everything loaded through rubygems:
Gem.loaded_specs.keys
I don't know of a universal way to see which rails plugins are loaded, you can look at the source for Rails::Initializer (pre 3.0) & figure out what your version of rails is doing. Hopefully you know which plugins should be loading & can confirm that from the console when debugging.
回答2:
With versions:
Gem.loaded_specs.values.map {|x| "#{x.name} #{x.version}"}
回答3:
I think the above answers using Gem.loaded_specs.keys
show the gems on the "load path".
However, you originally asked about gems loaded into memory, and this answer may be more helpful.
来源:https://stackoverflow.com/questions/2747990/is-there-any-way-to-tell-which-gems-and-plugins-are-loaded-at-runtime-for-a-rail