强制sbt重新读取〜/ sbt / plugins

时间:2012-08-01 22:29:55

标签: scala sbt

我正在评论sbt-gpg-plugin中的~/.sbt/plugin/build.sbt,因为我使用了很多不同项目的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

1 个答案:

答案 0 :(得分:0)

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

$ 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