问题描述
我在使用jdk17进行Spring mvc开发时发现 @Resource用不了了。
原因
因为JDK版本升级的改动,在Jdk9~17环境下,搭建Springboot项目,会出现原有@Resource(javax.annotation.Resource)不存在的问题,导致项目从Jdk8迁移到高版本时遇到的问题
从Jdk9开始,JavaEE从Jdk中分离,jdk就移除掉了javax.annotation.jar包的默认集成,从而导致版本不兼容。所以一旦spring项目从JDK8升到高版本,都会出现javax.annotation.Resource无法引用报红。
解决方案
方案一:手动导入javax.annotation包
去maven仓库搜索:
Javax Annotation API
导入对应的依赖即可:
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.3.2</version>
</dependency>
方案二:
将高版本的jdk降为JDK1.8