我渴望@GrailsCompileStatic
在我的 grails 3.1.7 应用程序的许多地方使用注释。但主要问题是它没有考虑到域、命令和控制器与其他方法(如save()
or validate()
)或变量(如g
)“混合”。
我找到了上述方法的解决方法:我从具有空save()
方法的抽象类继承域和命令(它的实现随后被 grails 覆盖,但静态编译不会失败)。这个抽象类也通过方法实现来实现grails.validation.Validateable
特征。validate()
但是有没有更好的方法来启用静态编译而没有这些肮脏的技巧?
在许多控制器中,我使用该g.createLink()
方法。在静态编译期间,我应该如何g
在内部传递变量以避免这种情况?
错误:(37, 39) Groovyc: [静态类型检查] - 变量 [g] 未声明。