使maven enforcer插件依赖收敛规则忽略工件的次要版本
我想在我的maven项目中引入使maven enforcer插件依赖收敛规则忽略工件的次要版本,maven,maven-3,maven-enforcer-plugin,Maven,Maven 3,Maven Enforcer Plugin,我想在我的maven项目中引入maven enforcer插件,但不想在评估规则时比较bug修复版本 例如:groupId-artifactId-X.Y.A和groupId-artifactId-X-Y-B不应被视为规则失败 当前的插件配置如下所示 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifa
maven enforcer插件
,但不想在评估规则时比较bug修复版本
例如:groupId-artifactId-X.Y.A
和groupId-artifactId-X-Y-B
不应被视为规则失败
当前的插件配置如下所示
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.0.0-M3</version>
<executions>
<execution>
<id>enforce-versions</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireJavaVersion>
<version>1.8</version>
</requireJavaVersion>
<banDuplicatePomDependencyVersions/>
<dependencyConvergence/>
</rules>
</configuration>
</execution>
</executions>
</plugin>
org.apache.maven.plugins
maven enforcer插件
3.0.0-M3
强制执行版本
执行
1.8
如果一个工件,比如说,aws java sdk
是从两个不同的直接列出的依赖项中作为传递依赖项拉入的,那么如果aws java sdk
的版本仅在较小的版本(如1.21.667
和1.21.700
上存在差异,则插件不应引发错误。
仅当功能部件/主要版本不同时,如
1.21.667
和1.17.111
时,才会引发错误,而当前规则不可能这样做
您需要为此编写自己的强制规则。您能解释一下您的意思吗:
groupId-artifactId-X.Y.A和groupId-artifactId-X-Y-B
是X.Y.A
和X-Y-B
的版本吗?或者这些东西是artifactId
的一部分?@khmarbaise如果一个工件,比如说aws java sdk是从两个不同的直接列出的依赖项中作为传递依赖项拉入的,那么如果aws java sdk的版本仅在较小的版本(如1.21.667和1.21.700)上有所不同,插件不应该出现错误。如果功能/主要版本不同(如1.21.667和1.17.111JFMEIER所说),则If应仅在功能/主要版本不同(如1.21.667和1.17.111JFMEIER所说)时引发错误…因为当前实施的规则正在比较整个版本,不要忽略错误修复部分。。。当然,你也可以向maven enforcer插件发出拉取请求……那太好了。。。