Ruby1.9でopen_gemのLoadErrorが出る場合
正確な条件は把握していませんが、open_gemに依存したgemをインストールした後に以下のエラーが出るようになりました。
no such file to load -- open_gem/common_options (LoadError)
バグレポートは作成されているようですが、対応の見通しは立っていない様子。
gemプラグインの初期化(?)フェーズでopen_gemというgemをrequire 'open_gem/...'でロードできることを期待しているが、それができないケースがあるという感じでしょうか。以下のようにして絶対パスでrequireする様にしたらLoadErrorは出なくなりました。
diff --git a/lib/rubygems_plugin.rb b/lib/rubygems_plugin.rb index 0d6c477..225ad37 100644 --- a/lib/rubygems_plugin.rb +++ b/lib/rubygems_plugin.rb @@ -5,7 +5,7 @@ require 'rubygems/dependency' require 'rubygems/version_option' require 'shellwords' -require 'open_gem/common_options' +require File.expand_path('open_gem/common_options', File.dirname(__FILE__)) Gem::CommandManager.instance.register_command :open -Gem::CommandManager.instance.register_command :read \ No newline at end of file +Gem::CommandManager.instance.register_command :read
さて、どうしたものでしょうか。あまり致命的な問題ではなく、大して困っていないので何が原因でどうするのがベストなのか調べる気力がわきません。
というところで一区切り。