这两天玩spring,配置完,启动tomcat的时候出现了以下错误
java.lang.NoClassDefFoundError: org/apache/tiles/listener/TilesListener
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
检查Eclipse里的Referenced Libraries,在引入的下面两个包里确实有上面的Class
struts2-tiles-plugin-2.0.6.jar
spring-web.jar
转念再想,Eclipse里引入的包,tomcat应该不知道才对。
于是把jar包全部转到application所在的WEB-INF/lib目录下,再次启动,问题解决。
再次把jar包转移到Apache Software Foundation/Tomcat 6.0/lib目录下,也没问题。
最后又试着往jdk/lib,以及环境变量的path的某个目录下放了下,结果是tomcat找不到。
结论:tomcat找引用的jar包时,先找Tomcat 6.0/lib下的jar包,再找application所在的WEB-INF/lib目录。