使用log4J进行OSGI集成测试的pax考试记录

时间:2016-02-06 15:46:21

标签: java osgi log4j2 pax-exam

我尝试使用Felix 5.4.0在本机容器内使用pax exam 4.8.0设置集成测试。我的第一个jUnit测试运行正常,问题是日志记录 - 我无法更改日志记录配置,这非常烦人。 (请注意我正在谈论容器日志记录 - 驱动程序配置没问题。该问题仅涉及在OSGI容器内运行的内容。)

Official documentation意味着所有内容都应该开箱即用,以便log4j能够捕获通过slf4j API发送的所有日志(这是我的情况)。但它没有说明如何指定log4j.properties文件或等效文件。

我试图无济于事的事情:

  • 将文件放在不同的位置(类加载root,META-INF,...)
  • 通过ConfigurationAdmin API在@Before方法内设置运行时的配置
  • 将各种org.ops4j.pax.logging工件添加到我的配置
  • 指定指向包含org / ops4j / pax / logging.config的目录的felix.cm.dir属性(使用org.apache.felix.configadmin包)。 ConfigurationAdmin确认文件加载了PID org.ops4j.pax.logging,但仍然没有糖。

在所有情况下,我的配置都会被忽略(这可以通过提供虚假配置来证明 - 没有任何错误)。

是否有人设置了jUnit + PAX + log4j.properties?感谢。

0 个答案:

没有答案