是否有办法注入Log
依赖到一个非mojo类实例?在Mojo类中,每当我们想要记录某些内容时,我们只需调用getLog()
,但是在服务类的情况下会发生什么呢?
像下面这样的命令不能工作。
@Singleton
public class AServiceClass implements ServiceInterface {
@Inject
private Log log;
...
}
解决这个问题的一个简单方法是,每当我们调用Mojo类时,将日志对象从Mojo类传递给service方法,但我不想这样做。
所以,感谢maven-checkstyle-plugin,我能够找到解决方案。
当您想访问日志记录器时,您需要扩展AbstractLogEnabled。
@Singleton
public class AServiceClass extends AbstractLogEnabled implements ServiceInterface {
public void method(){
// getLogger() gives you access to the logger
getLogger().info(...)
}
}