在Tomcat中找不到logback.xml(或其他资源)

时间:2011-04-20 20:19:50

标签: java tomcat classloader slf4j logback

我正在使用Logback作为日志记录框架开发Web应用程序,并在Tomcat 6中对其进行测试。出于某种原因, logback.xml 无法读取。

  • logback.xml 位于 WEB-INF / classes
  • Logback本身位于 WEB-INF / lib
  • 我正在使用SLF4J。
  • 使用了Logback:我在catalina.out中看到了日志消息,LoggerFactory.getLogger(...)返回了logback logger实例。
  • 我已经重新加载了应用程序,甚至重新启动了Tomcat。

知道发生了什么事吗?

更新:似乎正在发生更深层次的事情。这些返回null

// in a servlet
getClass().getClassLoader().getResource("/logback.xml");
getClass().getClassLoader().getResource("MyServlet.class");

当我记录类加载器时,一切看起来都很好:

22:32:11.221 [http-8080-1] INFO test.MyServlet - WebappClassLoader
  context: /test
  delegate: false
  repositories:
     /WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.StandardClassLoader@630f41e9

1 个答案:

答案 0 :(得分:1)

这是Linux许可的事情。某些目录缺少读/执行权限。我在I ran into more problems with that时意外修复了它。