解决maven启动Spring项目报错的问题
发布时间:2020-12-14 20:11:39 所属栏目:Java 来源:网络整理
导读:第一个问题 java.lang.ClassCastException: org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer 出现原因主要是 javax.servlet-api 在运行时将spring容器当成了servlet容器出现类型转
第一个问题 java.lang.ClassCastException: org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer 出现原因主要是 javax.servlet-api 在运行时将spring容器当成了servlet容器出现类型转换错误。 解决方法: 在pom.xml文件中修改 javax.servlet-api 的作用域为provided <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> 第二个问题: Could not resolve bean definition resource pattern [classpath:spring/applicationContext-*.xml] 在SSM项目中,由于有 mapper映射文件和一些其他的配置文件,在maven项目中需要被识别,所以会加上一下配置,允许这些静态文件通过, <resources> <!-- 如果不添加此节点mybatis的mapper.xml文件都会被漏掉。 --> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> 但是以上配置修改了默认的resource目录,导致src/main/resources的所有文件都不能被扫描,也就出现了其他在resources目录下的文件不能被扫描的错误,所以需要加上默认的resources 目录配置: <build> <resources> <!-- 如果不添加此节点mybatis的mapper.xml文件都会被漏掉。 --> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build> 以上这篇解决maven启动Spring项目报错的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |