【问题标题】:How to set up a local proxy repository for SBT?如何为 SBT 设置本地代理存储库?
【发布时间】:2012-04-07 15:07:09
【问题描述】:

我对 Maven/Ivy 的了解几乎为零,但我知道这些技术支持 SBT 自动下载和管理库的能力。

当我尝试从 SBT 生成 IntelliJ Idea 项目时,它(Idea 或生成器插件)未能找到存储在通用 Ivy 2 缓存中的缓存库。我通过将 SBT 项目设置为使用在项目目录下存储下载库的旧方案解决了这个问题。我的另一个项目使用旧的 SBT 版本,默认情况下这样做。在这两种情况下,我都使用clean 命令在备份之前删除库二进制文件,并在再次下载所有库之后使用update 命令。这意味着我多次下载相同的库文件。

问题是如何设置本地存储库来缓存库,以便 SBT 更新将从本地缓存中下载库(如果可用)?如果可能的话,最好使用现有的~/.ivy2/cache 目录作为缓存。

如果您至少具备基本的 Ivy 2 知识,我倾向于认为这可能相当简单。

【问题讨论】:

    标签: scala maven sbt ivy


    【解决方案1】:

    伊万,这可能会有所帮助。

    sbt
    > deliver-local
    [info]  delivering ivy file to /.../target/scala-2.9.1/ivy-1.0.xml
    

    然后,您需要找到 IntelliJ 等效步骤,但在 Eclipse 中,您需要使用 IvyDE plugin 提供的附加库“IvyDE Managed Dependencies”配置构建路径

    1) browse to the target/scala-version/ivy-1.0.xml file
    2) select desired configurations (compile, runtime, test, provided, etc.)
    

    现在你有一个 ivy 表示你的 sbt 配置。

    这很好用,但有一个烦人的例外:在“sbt clean”上,常春藤配置文件被吹走,你必须重复上述操作。 Eclipse 项目 clean 保留了 ivy 配置,顺便说一句。

    如果这种方法可以应用于 IntelliJ,请继续发布

    【讨论】:

      猜你喜欢
      • 2011-04-15
      • 1970-01-01
      • 2017-04-04
      • 2019-12-04
      • 2018-06-24
      • 2021-09-05
      • 1970-01-01
      • 2014-03-01
      • 2011-12-15
      相关资源
      最近更新 更多