maven部署SpringMVC常见问题

java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContext

显而易见,很明显就是找不到对应的类定义找不到
这里其实有几种解决办法
1、有可能是某个对应的包没导入,比如Spring的Context包没导入,也有可能是spring-jdbc的包没导入,具体的话得看你自身的业务代码用了什么东西
2、有可能你的spring配置文件,不在resource目录下,导致找不到对应的文件

maven坐标标红,并且提示:Dependency ‘org.springframework:spring-context:5.3.13.‘ not found

其实这些也挺好解决的,只要按照以下几个步骤排查就好
1、可能是因为maven还没下载资源导致的,按下图下载即可
maven部署SpringMVC常见问题_第1张图片
2、也有可能是因为idea的缓存导致的,可以按照下图一样重启
maven部署SpringMVC常见问题_第2张图片

Unsupported class file major version 61

这种的话就是spring的版本和你当前jdk的版本不匹配了,比如你当前jdk用的是jdk17,那你springMvc的版本必须得用5.3.x,如果用的是5.2.x的话,使用springMvc的代码的时候就会提示这个了,所以解决方法为如下两个
1、在maven坐标中,导入5.3.x的spring包,或者自己导入5.3.x的jar包
2、对当前项目的jdk进行降级,不要使用这么高的jdk

使用注解的时候,没有@Resource

这个的话,很多人导入jar包都只是导入spring的jar包,所以在使用注解注入值的时候,没有@Resource这个注解,主要是因为@Resource注解不是spring的,而是javax.annotation包中的,所以在maven中其实需要引用annotation包才可以使用@Resource注解


<dependency>
    <groupId>javax.annotationgroupId>
    <artifactId>javax.annotation-apiartifactId>
    <version>1.2version>
dependency>

你可能感兴趣的:(java,maven,spring)