如何在groovy中访问类中的外部类

时间:2018-02-06 15:57:18

标签: object groovy

我是groovy的新手......

我上了课。在这个类中,我想调用一个外部方法:LOG.error,但不知何故,groovy抱怨该方法不属于该类...我该如何调用该外部方法?

class GAPI{
  private myvar
  public getResult(){
     this.myvar="blabla"
     LOG.error("test")
  }
}

1 个答案:

答案 0 :(得分:0)

Groovy提供了@Slf4j注释,可以为您的班级添加log字段,例如

@Slf4j
class GAPI{
    private myvar
    public getResult(){
        this.myvar="blabla"
        log.error("test")
    }
}

或者,您可以使用@Log注释添加使用java.util.logging.Loggerlog字段,而不是使用Slf4j提供的字段。但是,在这种情况下,您必须注意java.util.logging.Logger使用不同的API,因此没有log.error()方法。

在您的示例中,Groovy抛出MissingPropertyException,因为您的类中未定义LOG。如果存在具有静态方法LOG的类error,则必须导入此类。但很可能你应该只创建LOG字段(带注释或手动)并将其称为最明确的(否则你的代码将无法读取)。