Gradle 依赖项不适用于相同版本的构建
Gradle dependency not working on same version of build
在我们公司,我们使用 Artifactory 来管理 Gradle 的工件和依赖项。
我们有使用 Gradle 6.0.1 构建的 library,此外,还有使用 [=] 构建的 micro-service 24=] 6.0.1 将此库用作依赖项。
我验证了这个库存在于声明的 repo 中。
当我们尝试构建项目时,我们收到一个错误,指出该库在声明的存储库中不存在,我们应该声明正确的库。
奇怪的是,如果我们将 微服务 降级到 Gradle 版本 5.6.2,库确实可以下载和工作。
我们还使用其他较旧的微服务对其进行了测试,这些微服务基于使用 Gradle 版本 4.10.3 构建的模板项目,它也在其中工作。
可能是什么问题?
我在问题中提到的库没有发布 POM 文件。
所以要么我需要在生成 POM 的情况下再次发布它(因为库本身是用 Gradle 而不是 Maven 构建的 - 有一种方法可以用 Gradle 生成 POM)
或:
我会将以下代码添加到 build.gradle
文件,这样 Gradle 就会下载工件,即使它没有 POM 文件。
repositories {
maven {
url uri('lib')
metadataSources {
artifact()
}
}
}
在我们公司,我们使用 Artifactory 来管理 Gradle 的工件和依赖项。 我们有使用 Gradle 6.0.1 构建的 library,此外,还有使用 [=] 构建的 micro-service 24=] 6.0.1 将此库用作依赖项。 我验证了这个库存在于声明的 repo 中。
当我们尝试构建项目时,我们收到一个错误,指出该库在声明的存储库中不存在,我们应该声明正确的库。
奇怪的是,如果我们将 微服务 降级到 Gradle 版本 5.6.2,库确实可以下载和工作。
我们还使用其他较旧的微服务对其进行了测试,这些微服务基于使用 Gradle 版本 4.10.3 构建的模板项目,它也在其中工作。
可能是什么问题?
我在问题中提到的库没有发布 POM 文件。
所以要么我需要在生成 POM 的情况下再次发布它(因为库本身是用 Gradle 而不是 Maven 构建的 - 有一种方法可以用 Gradle 生成 POM)
或:
我会将以下代码添加到 build.gradle
文件,这样 Gradle 就会下载工件,即使它没有 POM 文件。
repositories {
maven {
url uri('lib')
metadataSources {
artifact()
}
}
}