Groovy 尽管函数参数中存在错误,但仍在编译

Groovy compiling despite error in function arguments

这在 Groovy 合法吗?

class RequestContext {
    def static requestContext

    def static setRequestContext(rc) {
        requestContext = rc
    }
}

鉴于以上情况,我预计以下使用 groovy-eclipse-compiler 在编译时会失败:

RequestContext.setRequestContext()

然而这已经过去了,我正试图让它在 mvn compile 时失败。

它不会在编译时失败,因为您可以在运行时通过元动态添加该方法class,即:

class Test {
}

Test.metaClass.static.woo = { -> println "yay" }

Test.woo() // prints 'yay'

要在编译时失败,您需要用 @CompileStatic@TypeChecked

注释调用 class