首先说说引起此报错的原因。在我的SpringBoot项目中,使用了Druid连接池,版本1.1.14。我使用的spring-boot-starter-parent的版本是2.1.1.RELEASE。第一、Druid自带的spring-boot-starter-parent版本是1.5.x;第二、spring-boot-parent在2.x版本上废除了org.springframework.boot.bind.RelaxedDataBinder。

按理来说规定了spring-boot-starter-parent的版本后,他的版本就会覆盖Druid里面自带的spring-boot-starter-parent版本,既然覆盖了就不会有这个错误。检查所有依赖,关于spring-boot的相关依赖,把相关依赖的version都取消掉。取消掉相关spring-boot的版本好,只留下spring-boot-starter-parent的版本号,发现报错消失。

百度有提供以下解决办法:

第一:将spring-boot-starter-parent的版本回退到1.x;但是我回退版本后发现我使用的org.apache.commons依赖报错;

第二:将druid的版本回退到1.1.10,但是回退后还是报错;