Grails2.4.2-控制器中的本地类';s动作

Grails2.4.2-控制器中的本地类';s动作,grails,groovy,Grails,Groovy,出于好奇,我尝试在控制器的一个操作中放置一个本地类,例如: def index() { class TestClass { TestClass() { // do something } doSomething() { ... } } TestClass test = new TestClass() test.doSomething() respond anything } 但是,编

出于好奇,我尝试在控制器的一个操作中放置一个本地类,例如:

def index() {
    class TestClass {
        TestClass() {
            // do something
        }
        doSomething() { ... }
    }
    TestClass test = new TestClass()
    test.doSomething()
    respond anything
}
但是,编译总是失败,给我一个如下错误:

Error Compilation error: startup failed: class TestClass ...
                                         ^

你有什么想法吗?

你不能在方法中定义类


将它移到方法之外

我认为这是可能的,因为groovy是基于Java的,我在这里发现了一个方法中有一个类:有什么区别?不,groovy不是Java。本地类在Groovy中无效。。。公平地说,我在16年的专业Java开发中都没有在Java中使用过它们……当然这可能是我的失败,谢谢!我切换到使用匿名类:)