maven - Gradle 和本地 Ivy 存储库未找到传递依赖项

标签 maven gradle dependencies ivy dependency-management

我正在构建一个 Spring Boot Web 应用程序,在我的设置中,我有一个本地存储库,用于托管我所有的第三方 JAR - 该存储库是 Ivy 格式。我已经能够在连接到 Maven 中央存储库的同时构建 WAR 文件,现在我需要能够从我的本地存储库离线构建。

我已将所需的所有依赖项复制到 Ivy 格式( /{module}/{name}/{version}/{name}-{version}.jar ),现在我想关闭 mavenCentral()存储库并在本地构建。

但是,如果我运行 gradle 依赖项,当我连接到 maven Central 时,我看不到任何列出的传递依赖项。在我的本地仓库中,我还添加了适当的 .pom 文件(遵循与 JAR 文件相同的命名约定),并尝试添加 ivy.xml 文件,但仍然没有传递依赖的迹象。

谁能指出我正确的方向或建议我在这里做错了什么?

我的本地仓库中的一个 Spring-Boot JAR 示例:

$ ls /repo/org.springframework.boot/spring-boot-starter-web/1.1.8.RELEASE
spring-boot-starter-web-1.1.8.RELEASE.jar  spring-boot-starter-web-1.1.8.RELEASE.pom

我的构建文件配置本地 Ivy repo :
repositories {
    ivy   { url "file://repo" }
}

运行 gradle 依赖的示例:
+--- org.springframework.boot:spring-boot-starter-web: -> 1.1.8.RELEASE
+--- org.springframework.boot:spring-boot-starter-security: -> 1.1.8.RELEASE
+--- org.springframework.boot:spring-boot-starter-thymeleaf: -> 1.1.8.RELEASE
+--- org.springframework:spring-context-support: -> 4.0.7.RELEASE

最佳答案

如果你没有得到传递依赖,那么它可能找不到元数据描述符(ivy.xml)。您可能必须指定自定义布局。查看here详情。

关于maven - Gradle 和本地 Ivy 存储库未找到传递依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28997851/

相关文章:

java - 如何使 javadoc.jar 优先于 sources.jar 中的 javadoc?

java - 添加jnetpcap到maven失败

java - 大标准输出的 Gradle 堆空间问题

gradle - 带有自定义转换模块的 MLCP 导入

android - 如何在执行阶段(Windows)中从Gradle构建运行exe文件

docker - 为什么在 Dockerfile 中运行安装之前需要运行更新?

java - Junit 测试不会取代 placeHolders

android - 无法解决:firebase-storage-19.2.0

go - 封装第三方配置结构

algorithm - 如何用替代路径表示依赖图