私の Ruby プログラムでは、ライブラリを遅延ロードしようとしています (好奇心旺盛な人向けのクラック)。
私がこれを行う場合:
require 'rubygems'
require 'crack'
すべてが正常に機能しています。ただし、これを試すと:
require 'rubygems'
autoload :Crack, 'crack'
LoadError が発生します。(読み込むファイルがありません -- クラック)
このエラーが発生するのはなぜですか? 「クラック」(したがって、他のユーザーがインストールした宝石) が $LOAD_PATH にないためですか?
編集:
さらに、autoload標準ライブラリで動作します:
autoload :Yaml, 'yaml'
正常に動作し、エラーは発生しません。