poi在读取文档的时候报错“Found interface org.apache.poi.util.POILogger, but class was expected”,查阅了网上的资料,有说是版本不一致,也有说依赖冲突的。
行那我就先排查一下:
1.从依赖树开始,
这个命令是查看maven是如何解决依赖冲突的依赖树
mvn -Dverbose dependency:tree
可以看见这部分无任何冲突,即使有共同引入版本也是一样的。
2.这样咱们还不能完全排除,那再看一下依赖关系图,
在pom.xml鼠标右键进入依赖关系图
maven依赖关系图中并没有发现有关poi的依赖有冲突,故排除依赖冲突可能。
3.在去掉saveToFile这句不使用sprie.doc for java直接用poi读取文件的情况,发现报错“No valid entries or contents found,this is not a valid OOXLM(office open xml)”。
于是想到poi是有关于“poi-ooxml”部分的依赖的,推测可能是缺少这部分依赖导致。
验证一下,版本号写一致,成功。
一些小笔记,一起学习,一起交流( •̀ ω •́ )✧有用记得O(∩_∩)O点赞~