2009-05-17 67 views
9

我已經開始通過構建一個寵物項目來學習groovy。我用XmlSlurper獲取一些html並解析它。我使用的是eclipse3.4和groovy 1.6插件。我有一個非常困難的時間試圖遍歷所有的HTML元素等我期望設置一些斷點,檢查當前的變量,我的內容是什麼,看看它包含什麼,我必須迭代,評估一些表達式等等如何在調試groovy(eclipse插件或其他)時檢查對象

但我幾乎不能做這樣的事情: - 一些變量不出現在查看變量(?也許它的那些不具有類型) - 選擇任何表達,但你不能評估 - 和最糟糕的是(對我而言)是任何變量都顯示出其所有常規的東西(元類,值...)。大多數時候,開發人員感興趣的東西都埋在層次結構中,很難找到。

我曾經說過,doco中提到的ObjectExplorer能夠提供幫助,但我無法使用腳本運行它。

在groovy開發中,人們用這種東西做什麼?

回答

11

選項1:

給下面的腳本一試

groovy.inspect.swingui.ObjectBrowser.inspect(object) 

這給所有的公共字段,屬性,方法等

選項2:

您也可以使用obj.dump()和or object.inspect()方法來查看valu例如對象 例如的println obj.inspect()或斷言obj.inspect()== 「一些價值」

其他選項:

  • 的Eclipse 3.4調試透視效果很好。即使沒有類型信息的人也會出現。你可以給你正面臨着與調試在3.4
  • 的println變量
  • 編寫單元測試與特定問題斷言關於XML
+0

選項1被丟棄,造成我的代碼的預期輸出是很難上運行groovysh 選項2幫助,特別是轉儲,但沒有太多 在Eclipse 3.4中調試對我來說效果不佳: *它轉到代碼沒有進入的行(if else的錯誤部分),但它只是一個顯示問題的代碼工作正常 *不是所有變量都可以看到,我認爲這取決於你是否用def聲明,他們是靜態等等 *當檢查一個變量時,它很難找到我想要的信息,因爲所有常規管道工具都顯示了。 我已經開始使用Idea,它更適合調試 – Persimmonium 2009-05-28 22:18:00

相關問題