zoukankan      html  css  js  c++  java
  • java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

    Tomcat 启动项目报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

    一、异常描述:

      1 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
      2 	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass
      3 (WebappClassLoaderBase.java:1892)
      4 	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass
      5 (WebappClassLoaderBase.java:1735)
      6 	at org.apache.catalina.core.DefaultInstanceManager.loadClass
      7 (DefaultInstanceManager.java:495)
      8 	at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged
      9 (DefaultInstanceManager.java:477)
     10 	at org.apache.catalina.core.DefaultInstanceManager.newInstance
     11 (DefaultInstanceManager.java:113)
     12 	at org.apache.catalina.core.StandardContext.listenerStart
     13 (StandardContext.java:5026)
     14 	at org.apache.catalina.core.StandardContext.startInternal
     15 (StandardContext.java:5633)
     16 	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
     17 	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1700)
     18 	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1690)
     19 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
     20 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
     21 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
     22 	at java.lang.Thread.run(Thread.java:748)

    二、错误分析:

    Java虚拟机是根据 Java ClassLoader (类加载器)决定如何加载Class。
    系统默认提供了3个 ClassLoader
    Root ClassLoader,ClassPath Loader,Ext ClassLoader
    我们也可以编写自己的 ClassLoader,去加载特定环境下的jar文件。
    能不能加载jar,加载哪里的jar,是由 ClassLoader 决定的。

    问题: 导入的仅仅是jar包的引用,例如在eclipse中通过build path加进user lib……(类似快捷方式)
    这种在Java Application中没问题,但在web Application中可能会出现找不到类的异常。
    在WEB Application中jar包最好放在webroot或webcontent下的lib文件夹内,特别是xml中用到的jar包。

    三、解决方法:

    1. jar包放在webroot或webcontent下的lib文件夹内

    2. 右击项目名称-Properties--Deployment Assembly--右边点击ADD-Java Build path entries --添加自定义的user-lib

    102346189301613

    102346298529976

    102346370085256

  • 相关阅读:
    关于ARM CM3的启动文件分析
    curl 基本使用简介
    在windows下获取硬盘序列号(win7 32位,Windows Server 64位测试,希望在其他平台测试,遇到问题的网友留言分享)
    oracle 数据库用户登录相关
    ubuntu 下搭建一个python3的虚拟环境(用于django配合postgresql数据库开发)
    ubuntu下安装postgres
    python 中变量的命名规范
    python 各模块
    python中的model模板中的数据类型
    python编程中在ubuntu中安装虚拟环境及环境配置
  • 原文地址:https://www.cnblogs.com/justlove/p/8251945.html
Copyright © 2011-2022 走看看