在我正在从事的项目中,我们发现EAR使用Oracle一致性产品作为compile
依赖项。这触发了已检测到的奇怪的类路径问题,并且一致性现在是provided
依赖项。
但是,我想确保没有人再犯过直接或不直接使用连贯性作为compile
的错误。那么,在给定一组依赖项约束的情况下,是否有任何Maven插件/解决方案可以确保所有maven模块都执行这些约束?
最佳答案
您应该深入了解maven-enforcer-plugin,它完全支持这些东西。
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<id>enforce-banned-dependencies</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<excludes>
<exclude>com.xyz:abc:*:jar:compile</exclude>
<exclude>com.xyz:abc:*:jar:runtime</exclude>
<exclude>com.xyz:abc:*:jar:test</exclude>
</excludes>
</bannedDependencies>
</rules>
<fail>true</fail>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
[...]
</project>
关于java - 如何确保Maven依赖项在给定范围内?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29014444/