未定義の方法facter :: util :: uptime:uptime:module(nomethoderror)のuptime
質問
私は人形ノードをセットアップしようとしていますが、Rubygemsは振る舞っていないようです。
独自のバイナリ(/usr/lib/ruby/gems/1.8/gems/facter-1.5.8/bin/facter)を介してCLIでファイルを実行すると、正常に動作しますが、それを使用すると、バイナリを使用すると、 rubygems(/usr/bin/facter)、それは次のようにスローします。
/usr/lib/ruby/1.8/facter/uptime.rb:11: undefined method `get_uptime' for Facter::Util::Uptime:Module (NoMethodError)
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:73:in `load'
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:73:in `load_file'
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:38:in `load_all'
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:33:in `each'
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:33:in `load_all'
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:30:in `each'
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/loader.rb:30:in `load_all'
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter/util/collection.rb:90:in `load_all'
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/lib/facter.rb:95:in `to_hash'
from /usr/lib/ruby/gems/1.8/gems/facter-1.5.8/bin/facter:137
from /usr/bin/facter:19:in `load'
from /usr/bin/facter:19
Rubyemsを削除して再インストールし、宝石を再インストールしようとしましたが、何も機能しないようです。
人形を実行しようとしているときに同じエラーをスローするので、何かがどこかにキャッシュされていると思います。
何か案は?
解決
インストールしているように見えます facter
Rubygemsをrubygemsで取り付ける前に、Rubygemsの外側。
Stacktraceの最終ファイルはそうであることに気付くでしょう /usr/lib/ruby/1.8/facter/uptime.rb
ファイルである代わりに /usr/lib/ruby/gems/1.8/gems/facter-1.5.8
.
ファイルが入っているかどうかを確認する必要があります /usr/lib/ruby/1.8/facter
確かに単なる要因の単なるバージョンであり、もしそうなら、それらを削除したり、異なる名前のディレクトリに移動したりすると、問題が解決します。
所属していません StackOverflow