Gradle 相当于使用 Maven Enforcer 插件来防止发布指向快照依赖项是什么?这可能吗?
如果对构建有任何快照依赖性,我希望能够阻止发布的发生。我知道我可能可以自己编写代码来完成它,但我想知道是否有任何“标准”或明显的方法可以使用 gradle 来完成它,但我在网上找不到任何关于它的信息。
解决方案
使用正确答案建议的解析策略:
project.getConfigurations().all { config ->
config.resolutionStrategy.eachDependency { DependencyResolveDetails details ->
//verifying that versions do not contain "SNAPSHOT"
if (details.requested.version.contains("SNAPSHOT")) {
throw new GradleException(sprintf("Using snapshot version of %s.%s",
[details.requested.group, details.requested.name]))
}
}
}
最佳答案
您可以实现自己的解析策略来拒绝 SNAPSHOT 依赖项。看看https://gradle.org/docs/current/userguide/dependency_management.html#sec:dependency_resolution看看它是如何工作的以及你有什么可能性。
关于maven - Gradle 相当于 Maven Enforcer 的 RequireReleaseDeps,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29553215/