背景
今天测试环境发布服务的时候,Jenkins编译报错
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-rules) @ dealapi ---
[WARNING] Rule 1: org.apache.maven.plugins.enforcer.BannedDependencies failed with message:
Found Banned Dependency: ch.qos.logback:logback-classic:jar:1.2.3
Found Banned Dependency: ch.qos.logback:logback-core:jar:1.2.3
Use 'mvn dependency:tree' to locate the source of the banned dependencies.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 7.126 s
[INFO] Finished at: 2020-07-06T20:21:20+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce (enforce-rules) on project cuxiaoapi: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. -> [Help 1]
之前没用过maven-enforcer-plugin,因为最近的修改只有引入了一个其他组的服务的SNAPSHOT包,以为是包冲突了,而且发现提示的这两个被禁止的包都是SNAPSHOT包引入的,因此第一时间先进行排除,使编译能通过,客户端可以正常测试,搞定以后,慢慢开始分析问题,https://my.oschina.net/liuyon...
这篇文章讲的很清楚了,涉及两个知识点,第一,maven-enforcer-plugin插件,第二,日志包引入,由于这两个知识点之前都不知道,所以碰到问题就不知所措了,明白问题后,进行验证,发现在maven项目的parent项目中
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<version>${maven-enforcer-plugin.version}</version>
<executions>
<execution>
<id>enforce-rules</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<banDuplicatePomDependencyVersions />
<bannedDependencies>
<excludes>
<exclude>ch.qos.logback:*:*</exclude>
<exclude>com.alibaba:fastjson:(,1.2.70)</exclude>
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。