ruby 1.9のデバッグに何を使用していますか?rdebugは互換性がないようです。何かありますか?
回答:
注:この答えは正しかったが、現在は古くなっている。以下の正解をご覧ください。TL; DR: 'debugger'を使用してください。
ruby-debugがRuby 1.9.xで利用可能になりました。http://www.github.com/mark-moseleyを参照してください
インストールするには(1.9 Rubyインストールでgemを使用):
gem install ruby-debug19
(おそらく必要な 'sudo'がその前にあります)。
ruby-debug19
もうメンテナンスされていません。他のすべての回答は古くなっています。
しかし、代替案があります:
debugger
救助へ!
これをあなたの中に入れてくださいGemfile
:
gem 'debugger', group: [:development, :test]
うまくいきます。-そして、3.2.something from replace以来、rails Gemfileに含まれていますruby-debug19
。まったく同じ機能を持ち、積極的にメンテナンスされています。
group :development do ... end
すでにグループが含まれているため、グループブロック内ではなく(好きな場所など)、好きな場所に配置します。
RUBY 2.0+以降のアップデート
byebugはRuby 2.0以降で現在推奨されているデバッガです
この問題はここに記載されており、デバッガーの作者であるcldwalkerは、デバッガーがRuby 1.9.2および1.9.3にスコープされることを指摘しています。
アップデート2
もはやメンテナンスされていない場所が見つからなくても、ruby-debugが積極的にメンテナンスされていないのは事実です。
Ryan Batesのレールのキャストを見ることができる新しいgemから始めるのに助けが必要な場合は、新しいデバッガgemを使用できます。
Gemfileに次のように入力します。
gem 'debugger', group: [:development, :test]
次に、debugger
キーワードを使用して、コード内の任意の場所にブレークポイントを追加できます。
引き続き使用できます
linecache19およびruby-debug-base19:
bash <<(curl -L https://raw.github.com/gist/1333785)
古い答え
これについては、rvm、ruby 1.9.1-p378を追加するだけです。本当の話は、ruby-debugが1.9.xに対応している場合でも、linecache-0.43は対応していないということです。解決策はインストールすることです:
gem install ruby-debug19
これで問題が解決しました。
古いアップデート
Ruby 1.9.2とRails 3のデバッグに問題がある場合:
gem 'ruby-debug-base19', "0.11.24"
gem 'ruby-debug19', "0.11.6"
あなたのGemfileで
bundle install
再び幸せなデバッガになります。
あなたが試すことができるいくつかのこと
1)rubyの通常のデバッガー-rdebug [1]で低速で実行する
2)unroller gemで実行する[悪臭のようなもの、非常に遅い]
3)大量の印刷ステートメントを高速に使用し、内省性を低下させる
4)irbプロンプトにドロップして、そこからコードを実行します。
自分自身の周りにコードをリストした独自の「drop to irbプロンプト」を作成することによってコードをリストすることができます[呼び出し元を使用してどこにいるのかを発見する]その後、通常のirbプロンプトにドロップします。
5)多分1.9互換モードのjrubyにはデバッガがありますか?
ここで私の答えを参照してください: Ruby-debugが機能していません-スタックオーバーフロー
Rubyデバッグを次の設定で動作させることです
rvmを使用して、プロジェクトの作業ディレクトリに.rvmrcと書いてあります:
rvm use ruby-1.9.3-p0@mygemset
これが役に立てば幸いです!
-フレディ
ruby 1.9.1-p243バージョンが公開され、互換性のあるruby-debug-ideも正常に動作しています。次のコマンドを使用してruby-debug-ideをインストールします。
gem install ruby-debug-ide
これにより、ruby-debug-base19およびruby-debug-ide gemがインストールされます。ただし、その前に、RubyForgeから入手できる開発キットのドキュメントに従ってmingwを正常にインストールしてください。
最新の機能はruby-debug-ide19 gemで利用できます。
ニーズに応じて、多くの選択肢があります。
前のコマンドの内部で何が起こったかをデバッグモードでその場から再実行することで「振り返る」ことができるので、私はこじり動作を使用します。
ruby-debug19
今は時代遅れです。