1

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

官方文档暗示一切都应该开箱即用,以便 log4j 捕获通过 slf4j API 发送的所有日志(这是我的情况)。但它没有说明如何指定 log4j.properties 文件或等效文件。

我试过无济于事的事情:

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

在所有情况下,我的配置都会被忽略(可以通过提供虚假配置来证明 - 永远不会出错)。

有人会设置一个工作的 jUnit + PAX + log4j.properties 吗?谢谢。

4

0 回答 0