有同事反馈自己maven-assembly-plugin打的包里面多了很多mvn dependency:tree中没有的jar。 我当时只是试着把他的maven-assembly-plugin更新到了最新版本3.1.1,没想到问题就消除了。 之后我继续把他的依赖和打包插件单独拎到一个新的空白maven项目里,最终发现问题所在。 原因 当你在pom对某个坐标使用exclusion *,排除全部传递依赖的时候,老版本的maven-assembly-plugin插件依然会包含你已经排除的依赖。 老版本插件打包 错误的包含了pom里已经排除的传递依赖,结果如下 新版本已经修复了这个问题,结果如下……

阅读全文