使用Grails远程控制访问静态常量

时间:2015-03-12 01:13:55

标签: grails groovy

如果我有类似的东西,请在测试中使用Grails遥控器

class FooTest {
   static final String CONSTANT = "some constant"
   def remote = new Remote()

   def testUsingRemote() { 
     remote { 
       new DomainObject(name: FooTest.CONSTANT).save()
     }
   }
}

在远程端执行时,闭包可能会因NoClassDefFoundError而中断,因为FooTest类本身不在已部署的应用程序中。

我可以通过将常量赋值给局部变量然后在闭包中使用局部变量(通过词法范围可用的局部变量)来修复它:

 def constant = FooTest.CONSTANT
 remote {
   new DomainObject(name: constant).save()
 }

解决这个问题的好方法是什么?

理想情况:在序列化闭包之前有没有办法解决或内联常量?

0 个答案:

没有答案