我创建了一个类:NumberHelper
它有方法:roll(num)
我想给它起别名,比如rollOnce
,所以我写道:
static def rollOnce = NumberHelper.&roll
当我调用rollOnce
. 如何在 groovy 中做到这一点?
更多详情:
首先,我们为自己的业务实现 Number 类,用 Java
def userBuildScript = findScript(name) as Closure
use (NumberHelper, StringHelper, UserHelper){
// first make the user object
// then
userBuildScript.call(preBuildUser, businessNumberObject)
}
我们为我们的 Number 类写了一个类别类,就是上面的 NumberHelper。
并在构建脚本中:
user(someRole) { user, number ->
it.someProperty = number.roll() // here, an exception throw
}
groovy.lang.MissingMethodException: No signature of method: xxx.xx.x.user.biz.Number,roll() is applicable for argument types
这些信息是否足以帮助我找到原因?
并感谢您的回答,谢谢:)