【问题标题】:Force sbt to re-read ~/sbt/plugins强制 sbt 重新读取 ~/sbt/plugins
【发布时间】:2012-07-30 21:29:48
【问题描述】:

我暂时注释掉~/.sbt/plugin/build.sbt中的sbt-gpg-plugin,因为我在不同的项目中使用了很多publish-local,而对GPG密码的查询完全让我紧张。

现在我需要重新启用该插件,因为我想推送到 Sonatype。但不知何故 sbt 不会重新检查 ~/.sbt/plugin/build.sbt,所以即使在编辑后,取消注释该行

addSbtPlugin( "com.jsuereth" % "xsbt-gpg-plugin" % "0.6" )

它仍然不要求 GPG 为工件签名的密码。我试过cleanreloadrebootreboot full,没有运气。我知道我可以重新启动计算机,这通常可以工作。但是必须有一些技巧来强制 sbt 重新检查 ~/.sbt 并识别它们的变化。

问题似乎涉及项目本身有project/plugins.sbt,它以某种方式干扰了全局插件缓存。 sbt 版本为 0.11.3

【问题讨论】:

    标签: scala sbt


    【解决方案1】:

    一个相当愚蠢的解决方案,所以请添加更好的答案:

    $ mv ~/.sbt/plugins/build.sbt ~/Desktop
    $ sbt publish-local
    

    这将尝试重新加载插件,但奇妙的是要求它们以 Scala 2.9.2 而不是 Scala 2.9.1 的形式出现。所以最终会出现寻找插件的问题。然后返回:

    $ mv ~/Desktop/plugins.sbt ~/.sbt/plugins/build.sbt
    $ sbt publish-local
    

    重新下载 Scala 2.9.1 的插件,并启用 GPG 插件。瞧。


    编辑永远不要尝试将文件移动到基​​目录~/.sbt/ - 你会screw up so much

    【讨论】:

      猜你喜欢
      • 2018-03-19
      • 1970-01-01
      • 2018-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-17
      • 2016-01-30
      • 2017-03-22
      相关资源
      最近更新 更多