2010-04-30 34 views

回答

33

這應該讓你的一切通過RubyGems的加載:

Gem.loaded_specs.keys 

我不知道的一個普遍的方式,看看哪些Rails插件加載,你可以看看源爲Rails ::初始化程序(預3.0)&找出你的版本的軌道正在做什麼。希望你知道哪個插件應該被加載&可以在調試時從控制檯確認。

+0

我認爲@sreid在下面的答案中有一個重要的觀點,如果我正確理解發生了什麼。加載路徑上的寶石數量不一定等於加載到內存中的寶石數量。例如,如果特定的組在「Bundler.require」中被排除,「Gem.loaded_specs」是否仍然顯示它們? – 2016-09-29 21:56:48

27

隨着版本:

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

我認爲使用上述答案Gem.loaded_specs.keys顯示「負載路徑」上的寶石。

不過,你最初問到關於加載到內存中的gem,而this的答案可能會更有幫助。

+0

不,其他答案只能列出所需的寶石。我已經用ruby 2.3測試過了。但你的答案+1,因爲'$ LOADED_FEATURES'也很有用。 – akostadinov 2017-02-27 09:10:33

相關問題