zoukankan      html  css  js  c++  java
  • jfinal运行时报错分析java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener

    这里解释一下,我用maven jetty运行没啥问题的项目,当我切换tomcat时候出现如下错误。

    问题1. - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class

    问题2. java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener

       这里大家如果直查询问题2,相信大家大多看到的解决方式是:检查输出环境,右击项目–>Build Path–>Source,如下

     这种方式解决问题是没错,当然你还得检查一下Deployment Assembly,检查maven lib包存在等,结果发现自己配的没问题,但是原因不在这里,那么再回归到问题1的报错搜索;

    出现这个原因,是因为javaee-web-api版本问题,在pom.xml 去看到,版本是6,当我们把项目和Tomcat的jdk配置成1.6,

    网上查到可能是tomcat自身的包冲突了 ,于是我把javax 这个引用注释之后,发现不报这个错误,而出现新的

    Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 2, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, dataSourceName -> 11q2w15aa1refzrau0gn85|629274e1, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass 

    那么排除包冲突的错误了,所以继续这个引入这个包,检查版本一切都是jdk 1.6没毛病时候,发现原来多了一行报错。webSocket需要1.7及以上的版本

     

    这下问题明朗了,那就把6版本升级为7.0,又把项目和tomcat的jdk换成了1.8

     一切OK ,顺利启动。

      原因总结,此项目版本需要jdk 1.6以上版本,但是pom.xml却配置成了1.6的版本的,所以会导致这个问题。

     本文属作者原创,如有转载,请表明出处:https://www.cnblogs.com/mobeisanghai/p/13186975.html

  • 相关阅读:
    小菜菜mysql练习50题解析——数据准备
    C语言(数据结构)——概述
    运行 jar
    Hive 语句
    java14 IO流缓冲区 input output
    java 14 IO流
    java 14 图片的读取和写入
    java 集合的基础2
    java 13 hashmao的entryset()
    java 13 集合的基础
  • 原文地址:https://www.cnblogs.com/mobeisanghai/p/13186975.html
Copyright © 2011-2022 走看看