[英]Activating an OSGI LogListener before other services?
我正在使用Apache Felix,Declarative Services和Maven编写基于OSGI的桌面应用程序。 它将使用JavaFX,所以我也使用了Drombler FX 。
在我开发的捆绑软件中,我想使用一种适当的日志记录机制,并且我目前正在尝试使Apache Felix Log工作。 我获取LogService
没问题,但这不足以使输出出现在控制台上。
网上的消息是,Everit的osgi-loglistener-slf4j
将完成此工作,并且-确实-在激活osgi-loglistener-slf4j
之后,控制台上会出现日志输出。
但是,直到我拥有了所有捆绑包之后 , osgi-loglistener-slf4j
激活,因此,我感兴趣的日志信息都不会输出。 我尝试在我的第一个捆绑软件中创建对LogLevel
的@Reference
,以尝试强制激活osgi-loglistener-slf4j
,但是没有成功。
我如何osgi-loglistener-slf4j
激活osgi-loglistener-slf4j
? 我已经阅读了有关开始级别的信息,但是我找不到有关如何在我的上下文中应用它们的任何信息(即台式机不是服务器,因此没有PAX或Karaf; Maven;并且我使用NetBeans,因此没有Eclipse)。
Drombler FX使用SLF4J: http : //www.drombler.org/drombler-fx/0.7/docs/tutorial/logging.html#logging
只需使用以下内容,它就可以工作:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
...
private static final Logger LOG = LoggerFactory.getLogger(MyClass.class);
在POM中添加以下依赖项:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.