我正在尝试调试我继承的一些(相当无礼的)Grails 代码中的一些问题。我是 Groovy 和 Grails 的相对菜鸟,虽然我是 Java 的老家伙。
这就是问题所在:我让这个东西在 jconsole 和 jdb 挂钩中运行,但是使用调试器很困难,因为很多代码都在闭包中。所以,例如,
def niftyMethod = {
// do something nifty
anObject.doSomethingThatBreaks()
}
作为控制器上单个方法的实现。
作为一个闭包,名称(当调试器看到它时)是 TheController.closure527(或类似的名称),而且很难找到。
那么,如何找到从块名到闭包的映射呢?
更一般地说,有没有关于做这种事情的好教程?
理想情况下,答案不会涉及转换到 IntelliJ,就好像上帝让我们使用这样的 IDE,她不会给我们 EMACS。