首页 > 解决方案 > Gradle:解决工件名称与模块名称不同的依赖关系

问题描述

我正在尝试解决使用 Ivy 发布到我们的 Artifactory 存储库的 Gradle 依赖项。jar 文件的名称与模块名称不同。这在 Ivy 中很容易做到,并且解决这种依赖关系没有问题,但 Gradle 希望 jar 名称采用“modulename-version.jar”格式。至少那是错误表明它无法找到的内容。

我认为肯定有一个简单的方法可以解决这个问题,但是经过大量搜索我还没有找到它。当与模块名称不匹配时,是否有某种方法可以将 Gradle 指向正确的 jar 名称?

我试过这个:

compileOnly ('com.mygroup:mymodule:1.0.3') {        
       artifact {
            name = 'myjar'
            type = 'jar'
            extension = 'jar'
       }        
   }

但是在编译时,它仍然会遇到这个错误:

找不到 com.mygroup:mymodule:1.0.3。

请注意,pom 文件名与 jar 文件名匹配,因此它也不同于模块名。但如有必要,我会显式地将 pom 中的所有依赖项添加到 Gradle 文件中。

标签: gradledependencies

解决方案


推荐阅读