本帖最后由 aihuaying 于 2012-08-17 14:49:42 编辑

解决方案 »

  1.   

    lib的jar文件还是没放对地方
    你建得什么类型的工程?
      

  2.   

    肯定是你lib包放置的地方不正确,第一种方法,将所有的spring相关包放到工程的web-inf/lib这个文件夹下,然后将web-inf/lib的所有jar放到classpath当中,不管你调试还是部署运行 应该都不会报之前的那个找不到类的问题,具体的org.springframework.web.context.ContextLoaderListener这个类 就在org.springframework.web-3.1.2.RELEASE.jar 这个包下,你可以用rar解压缩这个jar,应该能找到。
      

  3.   

    WEB_INF/lib下。已经放过。还是不行。ContextLoaderListener这个类在这个包org.springframework.web-3.1.2.RELEASE.jar是找到的。但还是不行。
      

  4.   


    你把tomcat启动报错的信息 打印出来,怀疑实际上是其他的问题,而不在这个类加载上
      

  5.   

    你用ctrl+shit+t,快捷键,然后输入ContextLoaderListener这个类,看能找到源码吗?应该是你包没加载进,或者你找一个java类,写这个类,然后看能import不?
      

  6.   

    这是我的报错信息。严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener
    java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1493)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4115)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4671)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1061)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
    at org.apache.catalina.core.StandardService.start(StandardService.java:525)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:701)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:585)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
      

  7.   


    我全都是用官方下载的spring-framework-3.1.2.RELEASE-with-docs里dist目录下的包的。哪些包会有什么冲突呢。
      

  8.   


    我试了过了这个org.springframework.web-3.1.2.RELEASE.jar包里有这个类。
    import org.springframework.web.context.ContextLoaderListener也能找到这个类。
      

  9.   

    该不会是没有把jar包引用进来吧
      

  10.   

    lz 是单纯的只用了spring 么?
      

  11.   

    完整的工程目录,引用完成的jar包,完整的配置信息贴出来看看。
    Ctrl+鼠标左键点击  org.springframework.web.context.ContextLoaderListener  能跟踪进去吗。
    还有你的第一个和第二个是不一样的引用,第一个行与不行跟第二个行与不行没什么关联吧。
      

  12.   

    哈,我也碰到过,不是因为少jar包,而是部署的时候jar包没部署过去。
    解决办法:确保jar包被部署到web-inf/lib下