Gradle构建错误:找不到semver4j-0.16.4-nodeps.jar文件。

7

最近我们在CircleCI构建中遇到了一个错误:

A problem occurred configuring root project 'android'.
> Could not resolve all artifacts for configuration ':classpath'.
   > Could not find semver4j-0.16.4-nodeps.jar (com.github.gundy:semver4j:0.16.4).
     Searched in the following locations:
         https://jitpack.io/com/github/gundy/semver4j/0.16.4/semver4j-0.16.4-nodeps.jar

重新运行作业有时可以使构建完成,即使当我在本地尝试加载该URL(https://jitpack.io/com/github/gundy/semver4j/0.16.4/semver4j-0.16.4-nodeps.jar)时,会出现错误:“未在JitPack存储库中找到”。我尝试使用--refresh-dependencies gradle选项在本地运行构建,并且能够重现错误...但只有一次。在没有更改build.gradle文件的情况下,下一次尝试时构建成功了。
我发现Kotlin Gradle插件对Semver4j的依赖在此提交中被修改,使其成为一个嵌入式依赖项。我希望将Kotlin Gradle插件升级到1.7.0会引用这个变化,但我不确定它是否这样做了;它肯定没有解决我的CircleCI构建问题。
我确认jitpack包含在我们的build.gradle文件的repositories部分中:
maven { url "https://jitpack.io" }

我希望有其他人能够解决这个问题,或者有一些gradle魔法可以作为解决方法吗?


我认为您的问题在 build.gradle 文件中,请参考此链接 https://dev59.com/H7roa4cB1Zd3GeqPsdvz#75005827。 - Surajkaran Meghwanshi
2个回答

20
buildscript中:
buildscript {
   repositories {
      //maven { url 'https://jitpack.io' } // Delete
      // Add:
      maven { url 'https://mvnrepository.com/artifact/com.github.gundy/semver4j' }
   }
}

allprojects 中添加它,但要在 jitpack 之上。
maven { url 'https://mvnrepository.com/artifact/com.github.gundy/semver4j'}
maven { url 'https://jitpack.io' }

2
这很有道理。拥有mvnrepository.com仓库的URL是关键。到目前为止,这个更改对我来说运行良好,正如预期的那样。我注意到这是你在Stack Overflow上的首次贡献...谢谢! - Mark McClelland

2

好知道 — 感谢提供链接!我已经发布推文询问他们是否有任何关于发生的事情的消息。如果这更可靠就太好了。 - Mark McClelland

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接