私は Rubygem に興味を持ち、それがどのように機能するかを調べ始めました。1.9 以降、Rubygemrequire
が THEになっていることがわかりましたrequire
。
以下のコードで:
require 'debugger'
debugger
require 'thor'
n
とl
とを始めましs
たが、行き詰まりました:
# specification.rb:263
def self._all # :nodoc:
unless defined?(@@all) && @@all then
specs = {}
self.dirs.each { |dir|
Dir[File.join(dir, "*.gemspec")].each { |path|
spec = Gem::Specification.load path.untaint
# #load returns nil if the spec is bad, so we just ignore
# it at this stage
specs[spec.full_name] ||= spec if spec
}
}
@@all = specs.values
_resort!
end
@@all
end
上記の方法に踏み込む前に、@@all
すでに準備されているようです。次に、どこ@@all =
にでもブレークポイントを設定しましたが、どのブレークポイントにも到達しません。
私は何が欠けていますか???
編集:
私の質問をもう一度見てください。見えるrequire 'debugger'
?私はばかのように感じます。
質問は「どうすればデバッグできますかrequire
」ですか?
閉まっている:
Plzはこの素晴らしい答えを見てください: https://stackoverflow.com/a/16069229/342366