当前位置: 首页 > 知识库问答 >
问题:

自动将sbt依赖项更新到最新版本

苏星宇
2023-03-14

虽然在处理未解决的sbt依赖项时存在许多问题,但似乎没有更新这些依赖项的通用方法

您需要手工为每一个检查maven central,还是有一些漂亮的工具可以自动将它们更新到最新版本?

共有1个答案

翟鹏
2023-03-14

我已经在本地使用sbt-updates插件多年了--只需将它添加到本地sbt用户配置中,然后在项目目录中运行sbt dependencyupdates,您就会得到一个在Maven Central(或您为该项目配置的任何其他存储库)中有更新的依赖项列表。

scala-steward bot构建在sbt-updates的基础上,为依赖更新提供GitHub pull请求。如果您的项目是开源的,您可以将它们添加到主实例的配置中(我亲自为15-20个项目这样做,虽然它不是完美的,但它非常有用,并且一直在变得更好),或者运行您自己的实例(我没有亲自尝试过)。

请注意,这两种选择都不验证依赖项更新是否相互兼容--只是验证它们是最新的。你仍然需要仔细观察驱逐等情况。

 类似资料:
  • 我试图为我们的项目定义一个发布过程。 我能够使用maven发布插件来完成发布,但我必须手动更新所有内部快照依赖项,以在准备之前发布版本,然后在发布之后再次返回快照版本。 我使用了maven版本插件,它检测我的公司依赖项,即快照构建,并列出要使用的正确版本构建。 我尝试了maven发布插件,准备目标,并抱怨我的依赖项中的SNAPSHOT版本。 是否有一种方法可以将快照依赖项更新到最新发布的版本,然后

  • 我从另一个项目复制了,现在希望将所有依赖项都更新到它们的最新版本,因为这是一个新项目,如果它坏了,我不介意修复它。 最简单的方法是什么? 我知道的最好的方法是运行,然后手动更新中的每个依赖项。一定有更好的办法。 对于纱线的特定解决方案,请参阅此StackOverflow线程。

  • MVNRepository通常为每个依赖项列出“版本”和“更新”。 如果我发布自己的包,如何指定“更新”版本 Maven在解决传递依赖时使用了哪个依赖项?所以如果我的包依赖于包A,它依赖于包B,版本=1.0,更新=1.1。我会得到哪个版本的B?

  • 问题内容: 问题。 Gradle依赖管理使得: 没有简便的方法来检查依赖项更新的可用性(仅使用某些第三方插件,如ben-manes / gradle-versions-plugin)并下载更新以替换旧版本; 从远程存储库下载依赖项工件,然后将其存储在gradle缓存中,并在后续构建中重用;但是项目的成功编译必须不依赖于与Internet的连接,远程存储库的可用性以及这些存储库中特定版本的依赖项。

  • 问题。 分级依赖项管理是这样进行的: 检查依赖更新的可用性(仅使用一些第三方插件,如Ben-Manes/Gradle-Versions-Plugin),并下载替换旧版本的更新是不容易的; 依赖项构件从远程存储库下载,然后存储在gradle缓存中,并在后续构建中重用;但项目的成功编译不能依赖于与Internet的连接、远程存储库的可用性以及这些存储库中依赖项的特定版本的存在。 null

  • 告诉Gradle以下内容的最简单方法是什么: 检索“junit”依赖项并获取其最新版本。 管理Maven和Ivy仓库对我来说有点新鲜。我尝试了以下步骤,它们导致错误: > 编写,并按以下方式设置存储库: 尝试使用Spring Source Ivy仓库: 也许我误解了什么。为什么获取最新版本的依赖项会如此困难?