7

我最近在 Windows XP SP3 机器上安装了 SBT 以开始使用 Scala。当我最初启动它时,它开始从远程位置获取所有 JAR - 非常类似于 Maven 或任何其他依赖项管理工具。

但是,每当我更改目录并启动时sbt,它就会再次开始下载整个解决方案。有没有一种维护全局缓存的方法,即工件只下载一次,而不是每次我更改工作目录时?

4

2 回答 2

7

如果您在新目录中运行相同版本的 sbt,它将首先在本地 ivy2 缓存中查找。它仍然会检查所有资源,但如果它们已经存在,则会在本地获取它们。

但是,如果您使用的是 SBT extras,如果您更改为不同版本的 SBT,它可能会重新下载,因为它会为每个版本创建一个缓存。无论如何,这就是我在 Ubuntu 上的经验。

您可能遇到过某些类型的 sbt 插件,例如 sbt-idea,可能会下载其他资源,例如源存储库和文档。

于 2012-09-16T12:25:38.273 回答
1

就我而言(Debian),每次运行sbt它都会从Getting org.scala-sbt sbt 0.13.16. 我没有本地ivy2捕获。解决方案是将.ivy2文件夹复制/root到您的用户主页/home/username并授予用户访问权限。

于 2017-08-02T11:08:37.957 回答