如何在sbt任务的定义中使用库依赖项?

时间:2016-01-16 15:27:47

标签: scala sbt

我正在定义一个需要在库中调用代码的sbt任务。这是一个build.sbt文件,包含我迄今为止所尝试的内容:

libraryDependencies ++= Seq("com.some.company" %% "some-lib" % "1.0.0")

val doSomething = taskKey[Unit]("does something")

doSomething := {
  import com.some.company.function
  function()
}

导入不起作用。如何定义依赖于外部库中的代码的任务?

1 个答案:

答案 0 :(得分:10)

要在根目录中构建.sbt文件,SBT使用project目录中的信息。因此,在build.sbt目录中放置project并在其中设置libraryDependencies密钥:

libraryDependencies ++= Seq("com.some.company" %% "some-lib" % "1.0.0")

因此,为了澄清,您现在有两个build.sbt个文件:

  1. ./build.sbt
  2. ./project/build.sbt