【发布时间】:2012-08-19 23:26:43
【问题描述】:
项目设置:
- Logging-1.0.jar
- 包含一个使用 slf4j/log4j 的 Logger.class
- 依赖于slf4j-api.jar、slf4j-log4j.jar、log4j.jar
- LoggingOSGI-1.0.jar
- 包装日志项目
- 包含一个 Activator 和 MANIFEST.MF
- lib/ 包含 logging-1.0.jar、slf4j-api.jar、slf4j-log4j.jar、log4j.jar
- 来自 lib/ 的 jar 被添加到类路径中,来自 logging-1.0.jar 的包被导出
- SomeBundle-1.2.jar
- 包含一个 Activator 和 MANIFEST.MF
- 依赖于 LoggingOSGI-1.0.jar
从 SomeBundle 访问 Logger 类有效,但日志项目找不到 log4j.properties(log4j:WARN No appenders could be found for logger)。
问题:
- 我必须将 log4j.properties 放在哪里?
- 有什么我可以尝试的想法吗? (已经尝试过:不同的目录、Eclipse-Buddies、-Dlog4j.configuration 作为 VM 参数)
- 将是一个扩展点,它告诉日志记录项目 log4j.properties 的位置,这是一个好的解决方案吗?
【问题讨论】:
-
附带说明,您可能需要签出 Pax Logging 以登录 OSGi。
-
这不是一个选项,因为我们的完整逻辑在一个使用 slf4j 进行日志记录的简单 jar 中。为了方便起见,eclipse 插件只是包装器。看到这个问题:stackoverflow.com/questions/11670300/…
-
Pax Logging 接缝已死
标签: java eclipse-plugin log4j osgi slf4j