问题:Error creating bean with name 'xmlModelPlugin': Lookup method resolution failed;的解决办法
今天开发,又碰到一个奇奇怪怪的问题。
问题描述
今天拉同事的代码,编译项目时出错。其报错信息为:
Error creating bean with name 'xmlModelPlugin': Lookup method resolution failed;
上网查了下,这个报错的原因是:原项目在jdk1.8下运行的,升级成jdk11之后缺了一些jar包
。
Java jdk 中将:
JAXB API是java EE 的API,因此在java SE 9.0 中不再包含这个 Jar 包。
java 9 中引入了模块的概念,默认情况下,Java SE中将不再包含java EE 的Jar包
而在 java 6/7 / 8 时关于这个API 都是捆绑在一起的
解决办法
方法一:
降低JDK 版本到 JDK 8
这里下载一个版本:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
安装注意:jre 改变下目录,或者选择不安装。
方法二:
手动添加依赖包
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
如果想一劳永逸和协作间的考虑,可以选择第二种办法。
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。