簡體   English   中英

如何調試Ruby gem? (羅盤)

[英]How do I debug a Ruby gem? (Compass)

我正處於學習Ruby的早期階段,並且想學習如何調試gem,但是我很難找到學習資源。 一個簡單的例子對我來說有很長的路要走。

調試器是首選調試器嗎? 我在哪里需要它? 如何設置斷點?

注意:我正在做出有根據的猜測,根據需要調試的gem,調試過程可能會有所不同,因此作為參考,我對使用Compass 調試某些問題特別感興趣。

好吧,我自己想出來了。 這是我采取的步驟..

我正在運行Ruby 1.9.3(通過運行ruby -v確定),所以在測試ruby-debugruby-debug19之后 ,我確定這些調試器不再被維護,或者至少在我安裝ruby1時無法正常工作。 9.3-P125。 這導致我調試

有效的安裝說明是:

$ gem install debugger -- --with-ruby-include=PATH_TO_HEADERS

我機器上的PATH_TO_HEADERS只是ruby的源位置:

/Users/myusername/.rvm/src/ruby-1.9.3-p125/

由於我特別決定調試Compass編譯器,所以我做了以下事情:

  1. 克隆源: $ git clone git://github.com/chriseppstein/compass.git
  2. 檢查現有指南針版本的第一個$ compass -v是13.0
  3. 編輯了VERSION.yml並增加了補丁號(至13.1),因此它與我現有的安裝沒有沖突。
  4. 編輯了我想要調試的文件的.rb,它是lib/compass/compiler.rb並在頂部添加了這行: require 'debugger'; debugger require 'debugger'; debugger
  5. 構建了gem: gem build compass.gemspec
  6. 安裝新編譯的gem: sudo gem install compass-0.13.2.058ead2.gem
  7. 編譯了我遇到問題的現有基於羅盤的項目,並開始調試。
  8. 當我完成調試時,我用sudo gem uninstall compass卸載了調試版本,並選擇了與Compass 13.2相對應的編號。

關於步驟7的注意事項:由於調試器具有與ruby-debug / ruby​​-debug19相同的調試命令,因此我能夠按照現有的調試步驟進行調試。

如果您有其他調試器教程,指針,提示等,請發布它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM