【问题标题】:Gradle cannot find Maven parent dependency with version RELEASEGradle 找不到版本为 RELEASE 的 Maven 父依赖项
【发布时间】:2023-04-11 05:43:01
【问题描述】:

我有一个带有 pom.xml 的“项目 B”,如下所示:

<parent>
    <groupId>org.company</groupId>
    <artifactId>projectA</artifactId>
    <version>RELEASE</version>
</parent>

<artifactId>projectB</artifactId>
<version>0.0.1</version>

其中“项目 B”将“项目 A”作为父项目 pom。

我现在正在尝试使用 gradle 创建一个新的“项目 C”,如果我想使用“项目 B”作为依赖项,我可以像这样指定 build.gradle:

repositories {
    maven {
         url "http://mycompany:8081/artifactory/repository"
    }
}

dependencies {
    compile group: 'org.company', name: 'projectB', version: '0.0.1'
}

但我收到以下错误:

无法解析 org.company:projectB:0.0.1。

无法解析 POM http://company:8081/artifactory/repository/org/company/projectB/0.0.1/projectB-0.0.1.pom

找不到 org.company:projectA:RELEASE。

除了将我的 projectA 版本号设置为特定版本号之外,有没有办法让这个构建与 gradle 一起工作?

gradle 有没有办法像 maven 现在一样找到正确的版本?我的其他 maven 项目找到正确的版本没有问题。

我不想获取项目 A 的最新版本,也许下载完整的项目 B jar 就足够了。

P.D 我在本地计算机上使用 gradle 4.5 版和 maven 3.5.2 版

【问题讨论】:

标签: maven gradle build-dependencies


【解决方案1】:

我会做以下事情:

  • 从您的工件下载 projectB 的 jar 和 pom。
  • 通过将“RELEASE”替换为具体版本并将 projectB 的版本标记替换为新内容(例如将版本 1.2.3 替换为 1.2.3-manipulated)来更改 pom。
  • 将 jar 和新 pom 上传到您的工件。
  • 参考版本 1.2.3 - 从 Gradle 操作。

AFAIK 您不需要更改原始 jar 或其内容,更改和重新部署 pom 文件就足够了(使用表明您操作的不同版本)。

【讨论】:

    猜你喜欢
    • 2015-03-24
    • 2023-04-02
    • 1970-01-01
    • 2021-02-02
    • 2016-10-01
    • 2020-04-18
    • 2014-02-18
    • 1970-01-01
    相关资源
    最近更新 更多