[ruby] Ruby 1.9에서 디버깅

루비 1.9에서 디버깅을 위해 무엇을 사용합니까? rdebug가 호환되지 않는 것 같습니다 .. 거기에 아무것도 없나요?



답변

참고 :이 답변은 정확했지만 현재는 구식입니다. 아래 정답을 참조하십시오. 요약 : 지금 ‘디버거’를 사용하십시오.

이제 Ruby 1.9.x에서 ruby-debug를 사용할 수 있습니다. 참조 http://www.github.com/mark-moseley를

설치하려면 (1.9 Ruby 설치에서 gem 사용) :

gem install ruby-debug19

(아마도 그 앞에 필요한 ‘sudo’가 있음).


답변

ruby-debug19더 이상 유지되지 않습니다. 다른 모든 답변은 구식입니다.

그러나 대안이 있습니다.

debugger 구출!

이것을 당신의 Gemfile:

gem 'debugger', group: [:development, :test]

그냥 작동합니다. -그리고 그것은 레일스 Gemfile 3.2 이후에 포함되어 ruby-debug19있습니다. 똑같은 기능을 가지고 있으며 적극적으로 유지됩니다.


답변

RUBY 2.0+ 및 후속 업데이트

byebug 는 현재 Ruby 2.0 이상에 권장되는 디버거입니다.

이 문제는 여기문서화 되었으며 디버거 작성자 인 cldwalker는 디버거의 범위가 Ruby 1.9.2 및 1.9.3으로 지정 될 것이라고 언급했습니다.

업데이트 2

더 이상 유지되지 않는 곳을 찾을 수 없어도 루비 디버그가 적극적으로 유지되지 않는 것은 사실입니다.

새로운 gem을 시작하는 데 도움이 필요하면 새로운 디버거 gem을 사용할 수 있습니다 . Ryan Bates rails cast를 볼 수 있습니다 .

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

이것은 나를 위해 문제를 해결합니다.

이전 업데이트

루비 1.9.2 및 Rails 3 디버깅 퍼팅에 문제가있는 경우 :

gem 'ruby-debug-base19', "0.11.24"
gem 'ruby-debug19', "0.11.6"

Gemfile에서

bundle install

다시 행복한 디버거가 될 것입니다.


답변

시도 할 수있는 몇 가지

1) 루비의 일반 디버거로 실행 -rdebug [1] 일종의 느림

2) 언 롤러 젬으로 실행하세요.

3) 많은 print 문을 빠르게 사용하십시오.

4) irb 프롬프트로 가서 거기에서 코드를 실행하십시오.

주변에 코드를 나열하는 자신의 “irb 프롬프트로 드롭”을 작성하여 코드를 나열한 다음 일반 irb 프롬프트로 드롭 할 수 있습니다.

5) 1.9 호환 모드의 jruby에 디버거가 있습니까?

[1] http://beaver.net/rdebug/index-0.html


답변

ruby-debug19를 설치 한 후에도 문제가 계속되면 ruby-debug-base19를 업데이트 해보세요. 나는 오류가 있었고 그렇게 할 때까지 디버그 모드에서 WEBrick을 실행할 수 없었습니다.

gem update ruby-debug-base19

아, 그리고 모든 노력에 대해 Mr. Moseley에게 감사드립니다!


답변

여기 내 대답을 참조하십시오 :
Ruby-debug가 작동하지 않습니다.

Ruby 디버깅이 다음 설정과 함께 작동하도록하는 것입니다.

  • Mac OS X Lion 10.7.2
  • Aptana Studio 3 (빌드 3.0.8.201201201658)
  • rvm을 사용하여 프로젝트 작업 디렉토리에 다음과 같은 .rvmrc가 있습니다.

    rvm use ruby-1.9.3-p0@mygemset

이게 도움이 되길 바란다!

— 프레디


답변

나는 다음을 사용했고 그것은 나를 위해 잘 작동합니다.

gem ‘디버거’, 그룹 : [: development, : test]

루비 1.9.3p194 (2012-04-20 개정 35410) [x86_64-linux] 레일 3.2.8