使用equinox servlet bridge部署OSGi Web应用程序时,我得到以下信息:

log4j:WARN No appenders could be found for logger (org.springframework.osgi.extender.internal.activator.ContextLoaderListener).
log4j:WARN Please initialize the log4j system properly.

我尝试了几种提供必要的“log4j.properties”文件的方法,包括:
  • 将上下文参数“log4jConfigLocation”添加到servlet桥web.xml中
  • 在WEB-INF文件夹中创建一个文件夹“classes”,并在其中复制我的log4j.properties文件(并将其复制到其他几个位置)
  • 删除我的log4j软件包并将“extendedFrameworkExports”设置为org.apache.log4j,因此(我想)使用了tomcat log4j ...这没用,因为我的依赖项需要一些slf4j类,这些类作为log4j软件包的片段提供...不再存在...

  • 当然,我也有一个片段包,它使用log4j.properties文件扩展了log4j包,但是看起来好像没有使用过这个log4j包。

    添加:我应该补充一点,我正在Eclipse中开发应用程序...并且配置log4j/slf4j的片段捆绑包在那里工作。

    有人解决了吗?有任何想法吗?

    最佳答案

    我发现了我的错误。应该提供log4j.properties文件的片段没有包含该片段,因为我没有将其添加到build.properties的二进制版本中。

    10-06 14:13
    查看更多