1

在 GGTS 3.2.0 中调试 groovy 类时,调试器会在未执行的行处停止。

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

在上面的例子中,我在第一行设置了一个断点,“def s = hello”。调试器按预期在该行停止。然后我选择 step over 几次。调试器在两个 println 语句上都停止。只有第一个 println 真正被执行。认为我不能信任调试器是令人沮丧的。我希望我做错了什么?

4

1 回答 1

2

不,没有什么是错的。这是 groovy 的一个限制。它并不总是为其类文件生成正确的源位置。您可能会遇到https://issues.apache.org/jira/browse/GROOVY-4505的变体。我们已经解决了其中一些问题,但更多的情况不断出现。

话虽如此,我尝试使用 Groovy 1.8.6 和 2.1.5 进行复制,但不能。调试器仅在预期的行号处停止。您使用的是什么版本的 Groovy、Groovy-Eclipse 和 Eclipse?

于 2013-06-21T18:08:42.033 回答