如何将 Log 依赖注入到非 Mojo 类实例中?
Posted
技术标签:
【中文标题】如何将 Log 依赖注入到非 Mojo 类实例中?【英文标题】:How to inject the Log dependency to a non Mojo class instance? 【发布时间】:2021-10-26 05:50:18 【问题描述】:有没有办法将Log
依赖注入到非 Mojo 类实例中?在 Mojo 类中,只要我们想记录某些内容,我们只需调用 getLog()
,但在服务类的情况下会发生什么?
下面这样的东西不起作用。
@Singleton
public class AServiceClass implements ServiceInterface
@Inject
private Log log;
...
解决这个问题的一个简单方法是在我们调用它时将日志对象从 Mojo 类传递给服务方法,但我不想这样做。
【问题讨论】:
你为什么不使用 lombok ?就像***.com/a/43902039/175554 一样,我认为它也应该适用于 maven 插件 @özkanpakdil 我用过AbstractLogEnabled
【参考方案1】:
所以,感谢maven-checkstyle-plugin,我能够找到解决方案。
当你想访问记录器时,你需要扩展AbstractLogEnabled。
@Singleton
public class AServiceClass extends AbstractLogEnabled implements ServiceInterface
public void method()
// getLogger() gives you access to the logger
getLogger().info(...)
【讨论】:
以上是关于如何将 Log 依赖注入到非 Mojo 类实例中?的主要内容,如果未能解决你的问题,请参考以下文章