Chirag Patel
Chirag Patel

Reputation: 5929

Is there any way to tell which gems and plugins are loaded at runtime for a Rails process?

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.

Upvotes: 30

Views: 8411

Answers (3)

sreid
sreid

Reputation: 89

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.

Upvotes: 3

dmd
dmd

Reputation: 271

With versions:

Gem.loaded_specs.values.map {|x| "#{x.name} #{x.version}"}

Upvotes: 27

user324312
user324312

Reputation:

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.

Upvotes: 41

Related Questions