在global.sbt的构建文件中包含一个简单的val



我希望通过一个包含文件在多个build.sbt文件中设置外部版本号。

在构建

。我可以这样做

val base = "1.1"
version := base + ".8-SNAPSHOT"

这可以作为第一步。

根据在线帮助,我应该能够在我的~/.sbt/0.13文件夹中创建一个文件global.sbt

我用单行 创建了文件global.sbt
val base = "1.1"

并从build.sbt

中删除相应的行

但是当我启动我的sbt时,我得到"error: not found: value base"

所以,要么它没有找到全局sbt,要么这种形式的全局设置不起作用

关于如何解决这个问题,有什么建议吗?

我可以在构建中使用显式的include命令吗?sbt文件?

从您的测试来看,全局~/.sbt/0.13/*.sbt文件中的val s不会传播到本地*.sbt文件。

下面是一个有效的设置:

~/.sbt/0.13/插件/VersionBasePlugin.scala

import sbt._, Keys._
object VersionBasePlugin extends AutoPlugin {
  override def requires = plugins.CorePlugin
  override def trigger = allRequirements
  object autoImport {
    val versionBase = settingKey[String]("version base")
  }
  import autoImport._
  override def projectSettings = Seq(versionBase := "1.1")
}

,然后在build.sbt:

version := (versionBase.value + ".8-SNAPSHOT")

这对你有用吗?

相关内容

  • 没有找到相关文章

最新更新