2

誰かが以前にこのエラーを見たことがありますか? ソースでSUPPORTED_TYPEへの参照を見つけることができませんでした...

8/gems/net-ssh-2.5.1/lib/net/ssh/known_hosts.rb:33: /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/ からの「マップ」 lib/net/ssh/known_hosts.rb:33: /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/lib/net/ssh/known_hosts.rb:27 からの「search_in」内: /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/lib/net/ssh/transport/algorithms.rb:237 の「search_for」で:「prepare_preferred_algorithms!」で from /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/lib/net/ssh/transport/algorithms.rb:120:in `initialize' from /usr/lib/ruby/gems/ 1.8/gems/net-ssh-2.5.1/lib/net/ssh/transport/session.rb:79:/usr/lib/ruby/gems/1.8/gems/net-ssh-2.5 から「新規」に。 1/lib/net/ssh/transport/session.rb:79: /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/lib/net/ssh.rb から「初期化」します: 186: /usr/lib/ruby/gems/1 からの `new' で。
4

3 に答える 3

4

より簡単な解決策は、ここで説明されているように、この問題を修正する net-ssh の分岐バージョンを使用することです (公式の net-ssh gem の次のリリースでも修正されるはずです) 。

capistrano (私が今日持っていたもの) を介してデプロイ中にその問題が発生した場合は、Gemfile を介して github からこの net-ssh バージョンbundle exec cap deployをインストールし、 を使用して cap を呼び出すことができます。

Gemfile に入れgem 'net-ssh', :git => 'git://github.com/nessche/net-ssh.git'ます。

于 2012-05-24T21:48:32.780 に答える
2

これは、5 月 24 日のアップデート 2.5.0 または 2.5.1 で net-ssh gem に導入されたと思われる問題です。定数 SUPPORTED_TYPE は次の場所にあります。

http://net-ssh.github.com/net-ssh/classes/Net/SSH/KnownHosts.html

詳細はわかりませんが、これまでにこの問題に対していくつかの解決策がありました。1 つは、known_hosts ファイル (またはそのファイルから接続しようとしている特定のホスト) を削除することです。そのホストが known_hosts に再度追加されるまで接続できる可能性があります。そこに、なぜか。

私が見つけた 2 番目のオプションは、gem のバージョン 2.4.0 に戻すことです。この問題のチケットを次の場所に送信しました。

http://net-ssh.lighthouseapp.com/projects/36253-net-ssh/tickets/58-nameerror-uninitialized-constant-netsshknownhostssupported_type

それが役に立てば幸い!

編集:これに対するクラリフの解決策は、より受け入れられるもののように見えます。ありがとう、クラリフ!

于 2012-05-24T20:21:54.657 に答える
1

githubの問題をフォローし、クラリフが提案したことも適用した後、私はこれを思いつき、問題を解決しました。

http://tinyurl.com/cxr2xa3

于 2012-05-25T05:20:36.900 に答える