STS2.9.1不断复制Grails生成的类

STS2.9.1不断复制Grails生成的类,grails,groovy,sts-springsourcetoolsuite,Grails,Groovy,Sts Springsourcetoolsuite,有时,源文件会以某种方式获得两个类文件,如下所示: 尝试删除任何一个类文件都会出错。GrailsClean和EclipseClean项目没有帮助。通常,我必须删除源文件并重新创建,以摆脱额外的类文件,但上次不起作用。想法?请参见Burt Beckwith对解决方案的评论(但愿他能给出答案!)。事实上,我刚刚确定了根本原因,即放在类结束括号外的方法def。不过,奇怪的是,STS会因为语法错误而生成两种类型。这可能是Groovy的事情,因为您可以在一个源文件中定义多个类,并且您可以在没有显式类声明

有时,源文件会以某种方式获得两个类文件,如下所示:


尝试删除任何一个类文件都会出错。GrailsClean和EclipseClean项目没有帮助。通常,我必须删除源文件并重新创建,以摆脱额外的类文件,但上次不起作用。想法?

请参见Burt Beckwith对解决方案的评论(但愿他能给出答案!)。

事实上,我刚刚确定了根本原因,即放在类结束括号外的方法def。不过,奇怪的是,STS会因为语法错误而生成两种类型。这可能是Groovy的事情,因为您可以在一个源文件中定义多个类,并且您可以在没有显式类声明的情况下使用代码,它会为您将其包装成一个。这听起来很合乎逻辑。想贴个答案让我接受吗?这正是发生的事情。这实际上不是一个STS/Eclipse错误,只是错误消息可能更容易理解。但是,由于Groovy Eclipse直接从Groovy编译器获取所有(或大部分)错误消息,因此这会将任何适当的更改推回到编译器。