解决maven启动Spring项目报错的问题

第一个问题

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项目报错的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

时间: 2017-12-28

maven搭建spring项目(图文教程)

开发工具:MyEclipse2014版(jdk1.7)+Maven3.9. 新建Maven项目: Step1: Step2: Step3:这里选maven-archetype-webapp,因为后面的项目讲解都是web项目.如果是纯java项目,可以选择 maven-archetype-quickstart. Step4: Step5:右键项目,build path,修改jdk运行环境. 到这里,maven的web项目初建完毕. 修改:pom.xml <project xmlns="htt

Eclipse使用maven搭建spring mvc图文教程

本文为大家介绍了Eclipse使用maven搭建spring mvc的详细步骤,供大家参考,具体内容如下 1. 环境配置 a). Java 1.7 b). Eclipse luna c). Maven3.2.5 d). Spring 4.1.4 2. 创建maven工程 a). 打开eclipse,file->new->project->Maven->Maven Project b). 下一步 c). 选择创建的工程为webapp,下一步 d). 填写项目的group id和art

IntelliJ IDEA创建maven多模块项目(图文教程)

项目主要分成3个模块,wms-root为父模块,wms-core和wms-app(webapp类型的模块)为子模块. 一.Parent Project,创建wms-root父模块. 1.依次点击:File->New->Project 2.左侧面板选择maven(不要选择Create from archetype选项),如下图,点击Next即可. 3.依次补全如下信息,点击Next 4.输入项目名字.如ModuleProject,我们主要是在这个项目下创建我们的子模块. 5.这样我们就创建好了一

详解Maven 搭建spring boot多模块项目(附源码)

本文介绍了Maven 搭建spring boot多模块项目,分享给大家,具体如下: 备注:所有项目都在idea中创建 1.idea创建maven项目 1-1: 删除src,target目录,只保留pom.xml 1-2: 根目录pom.xml可被子模块继承,因此项目只是demo,未考虑太多性能问题,所以将诸多依赖.都写在根级`pom.xml`,子模块只需继承就可以使用. 1-3: 根级pom.xml文件在附录1 1-4: 依赖模块 mybatis spring-boot相关模块 2.创建子模块(

springmvc+maven搭建web项目

本文实例为大家分享了springmvc maven搭建web项目的具体步骤,供大家参考,具体内容如下 1.创建一个maven project 为spring1 2.进行项目的配置:默认的java 1.5 在properties中选择project facts项目进行配置,反选web之后修改java环境为1.8.修改之后如下图: 3. 配置好的工作目录如下: 4 修改pom.xml文件 增加两个jar包:servlet和spring webmvc pom.xml如下: <!DOCTYPE web-

IDEA新建Springboot项目(图文教程)

1.路径 File->New->Project 2.创建项目 选择Spring Initializr 点击Next,设置工程名字等基本信息 点击Next,选择需要下载的jar包,比如创建Web项目勾选Web 点击Next,修改项目名称,点击Finish创建完成 以上这篇IDEA新建Springboot项目(图文教程)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

idea 创建 maven web 工程流程(图文教程)

本文介绍了idea 创建 maven web 工程流程(图文教程),分享给大家,具体如下: 1创建一个project工作区间: 2.创建一个maven 基础工程,具体操作如图,next: 3.创建maven相关的 GroupId和ArtifactId,next: 4.重写setting.xml的文件地址(如果没有这步可以自己从配置里设置): 5.创建工程名称,finish: 6.打开配置启动项窗口: 7.添加本地tomcat启动,如果第一部(绿色"+"里面没有tomcat server

IDEA+Maven创建Spring项目的实现步骤

这篇随笔搭建的工程是普通的Spring工程,用于学习Spring框架,如果要搭建SpringMVC工程,可以参考另一篇 第一步:在IDEA点击new -> project 左侧选择Maven,直接点击Next.第一次使用IDEA的朋友,顶部还要选择Project SDK路径,就是Java的安装路径. 这里随便填一下之后点击Next 选择项目存放路径,或者保持默认,点击Finish,来到工程页面之后,在项目文件夹上右键并选择Add Framework Support 在这个页面找一下Spring,

用Eclipse 创建一个简单的web项目(图文教程)

Eclipse neon 汉化版 ; 1.右击新建 --> 选择 动态Web项目 2. 填写 项目名 项目位置 ; 选择 Dynamic web module version 和 tomcat version ; 点击完成 即可创建 项目; 2.1:项目名称: 2.2:项目位置: 2.3: Dynamic Web Module Version 和 Tomacat Version 之间有版本上的匹配关系: 匹配关系如下图 3. 创建成功后的项目结构: 4. 在创建好项目结构之后 先查看一下 项目的