网站返利程序,宁波网站设计制作公司,商城网站包括哪些模块,网站开发可行性报告问题描述
我在使用jdk17进行Spring mvc开发时发现 Resource用不了了。
原因 因为JDK版本升级的改动#xff0c;在Jdk9~17环境下#xff0c;搭建Springboot项目#xff0c;会出现原有Resource#xff08;javax.annotation.Resource#xff09;不存在的问题#xff0c;导…问题描述
我在使用jdk17进行Spring mvc开发时发现 Resource用不了了。
原因 因为JDK版本升级的改动在Jdk9~17环境下搭建Springboot项目会出现原有Resourcejavax.annotation.Resource不存在的问题导致项目从Jdk8迁移到高版本时遇到的问题
从Jdk9开始JavaEE从Jdk中分离jdk就移除掉了javax.annotation.jar包的默认集成从而导致版本不兼容。所以一旦spring项目从JDK8升到高版本都会出现javax.annotation.Resource无法引用报红。 java EE 即 java Enterprise Edition企业级应用目标是制定一系列企业级应用的标准服务。常见的 javax.servlet, javax.annotation。 Oracle 收购了创造 java 的 SUN 公司Oracle 又不想发展 java EE 了就把 java EE 交给 Eclipse 社区了但是又因为不知名的原因禁止社区使用 javax 这个名字。所以javax.servlet 就变成了 jakarta.servlet, jakarta.annotation。api无法向前兼容。 java ee 的最后一个版本也是 8以后就再也没有 java ee 的新版本 解决方案
方案一手动导入javax.annotation包
去maven仓库搜索
Javax Annotation API 导入对应的依赖即可: dependencygroupIdjavax.annotation/groupIdartifactIdjavax.annotation-api/artifactIdversion1.3.2/version
/dependency方案二
将高版本的jdk降为JDK1.8