最近在做一个Maven项目时,会有莫名奇妙的的报错问题(还是LOG4J那块的报错),排查了好久才知道是因为包冲突问题。首先项目本身的框架是有包含log4j的依赖的(在POM文件中),其次项目需要引入一个JAR包(封装了一系列接口方法),这个JAR包里包含了类似的LOG类(就是把log相关的JAR包一起打包了),所以在一刷新maven依赖就会报错。之后在POI相关的JAR包上也遇到类似问题。
通过这个问题,以后在导入外部jar包的时候,一定要先弄清楚外部jar包中包含的类有没有和项目本身引用的一些类冲突,如若冲突应该在打包的时候去掉这些类。