Eclipse 调试时计算GROOVY表达式

Eclipse 调试时计算GROOVY表达式,eclipse,debugging,groovy,sts-springsourcetoolsuite,Eclipse,Debugging,Groovy,Sts Springsourcetoolsuite,我试图在eclipse中调试一个简单的groovy项目,代码如下所示: def list = [1, 2, 3, 4, 5] println list.collect { it + 1 } 它执行得很好;仅当我尝试评估此部分时: list.collect { it + 1 } 在显示视图中(或在编辑器中检查:shift+crl+i),我听到以下消息: list.collect { it + 1 } Evaluation failed. Reason(s): org.c

我试图在eclipse中调试一个简单的groovy项目,代码如下所示:

def list = [1, 2, 3, 4, 5]
println list.collect { it + 1 }
它执行得很好;仅当我尝试评估此部分时:

list.collect { it + 1 }
在显示视图中(或在编辑器中检查:shift+crl+i),我听到以下消息:

list.collect { it + 1 }
    Evaluation failed. Reason(s):
        org.codehaus.groovy.runtime.InvokerInvocationException (id=115)
有人曾经遇到过这个问题,并且知道如何解决它吗?非常感谢

使用STS2.5.2(Eclipse 3.6.1r361)、Groovy 1.7.8、jdk1.6.024;Groovy Eclipse插件2.1.2.xx.20110218


顺便说一句,我认为这个问题在我使用STS2.3.x(Eclipse3.5.x)时并没有出现。

您不能在显示视图中创建闭包。相反,您需要在for循环中写出这一点。乙二醇-

def newList = []
for (elt in list) {
  newList << elt++
}
print newList
def newList=[]
用于(列表中的英语教学){

newList您不能在display视图中创建闭包。相反,您需要在for循环中写出它。例如-

def newList = []
for (elt in list) {
  newList << elt++
}
print newList
def newList=[]
用于(列表中的英语教学){

newList这个问题最好在Groovy Eclipse邮件列表中提出。谢谢,Peter,我会的。我只是觉得这可能是一个常见的问题,而且很容易解决。@z_free我鼓励你继续向SO发帖,以回答类似的问题。我在任何邮件列表之前来到这里。这个问题最好在Groovy Eclipse邮件列表中提出。谢谢,Peter,我会的LH.我只是觉得这可能是一种常见且易于修复的东西。@z_free我鼓励你继续向SO发帖,以回答类似的问题。我在任何邮件列表之前来到这里。是的,我刚刚在groovy eclipse插件网站上读到,你可以在显示视图中评估代码片段,但应该使用java语法并根据很奇怪,因为我几乎可以肯定我在vmware演示文稿中看到过这种情况。无论如何,Intellij Idea在很大程度上实现了这一点,所以我开始使用它。谢谢,安德鲁:)网站的这一部分已经过时了。如果您使用SpringSource工具套件(STS)(而不是Groovy Eclipse单机版),当在groovy堆栈框架上暂停时,您可以在display视图中计算groovy表达式。是的,我刚刚在groovy eclipse插件网站上读到,您可以在display视图中计算代码片段,但应该使用java语法并相应地强制转换所有groovy对象。奇怪,因为我几乎可以肯定我在vmwar中看到过这种事情不管怎么说,Intellij Idea在很大程度上起到了作用,所以我开始使用它。谢谢,Andrew:)网站的那部分已经过时了。如果使用SpringSource工具套件(STS)(而不是Groovy Eclipse单机版),当在Groovy堆栈框架上暂停时,可以在显示视图中计算Groovy表达式。