2013-06-21 26 views
1

在GGTS 3.2.0中調試groovy類時,調試器將停止在未執行的行上。爲什麼eclipse停止在調試groovy類時未執行的行上

def debuggerExample() { 
    def s = "hello" 
    if (s.contains("hello")) { 
     println "hello found" 
    } else { 
     println "goodby" 
    } 
    render "All Done" 
} 

在上面的例子中,我在第一行「def s = hello」上放置了一個斷點。調試器像預期的那樣停止在該行上。然後我選擇幾步。調試器在兩個println語句上停止。只有第一個println真的被執行了。認爲我不能相信調試器是令人沮喪的。我希望我做錯了什麼?

回答

2

沒有沒有錯。這是groovy的限制。它並不總是爲其類文件生成正確的源位置。您可能會碰到http://jira.codehaus.org/browse/GROOVY-4505的變體。我們已經解決了其中的一些問題,但是更多的情況在不斷出現。

這就是說,我試圖重現使用Groovy 1.8.6和2.1.5,不能。調試器只停在期望的行號上。您使用的是什麼版本的Groovy,Groovy-Eclipse和Eclipse?

相關問題