sbt 0.11.3:获取最新版本的git插件

xar*_*ion 6 version-control scala sbt

我有一个多项目结构,使用sbt 0.11.3构建.我想集中我的依赖版本,项目版本,工件,shell提示等等.这对我的发布管理和版本控制计划非常有帮助.所以我创建了一个插件并将我的全局配置放在那里.我的项目从github读取它并将其构建为插件.一切都很可爱.

./project/project/Build.scala

import sbt._

object PluginDef extends Build {
    override lazy val projects = Seq(root)
    lazy val root = Project("plugins", file(".")) dependsOn(versionPlugin)
    lazy val versionPlugin = uri("git://github.com/config.git") //changed the uri here
}
Run Code Online (Sandbox Code Playgroud)

所以,如果还没有,那么sbt将获取最新版本的插件.在〜/ .sbt/staging/somehashcode中缓存该版本.但是当插件项目发生变化时,我无法让它更新项目.我需要时手动去更新它.可悲的是,在20人团队中,它造成了一些问题.

我们如何检查插件更新?

Eug*_*ota 6

我没有试过这个,但以下可能会奏效.

刷新插件

  1. 更新到sbt 0.12.1,修复了 update
  2. 然后从sbt shell:

    > reload plugins
    > update
    > reload return
    
    Run Code Online (Sandbox Code Playgroud)

指定特定树

在某些情况下,将源依赖项修复到特定时间点可能会有所帮助.如果是这样,您可以添加提交哈希或标记为"git://github.com/config.git#hash".