如何将SBT任务添加到使用外部依赖项的build.sbt?
e.g。我想编写一个利用AWS SDK客户端的任务
libraryDependencies += "aws-sdk-name" % "etc. "%etc"
uploadTask := {
val s3Client = new AmazonS3Client(...);
s3Client.putObject(...)
}
但是,可以理解的是编译错误,因为依赖关系不会由sbt生成!
任务的文档仅限于非常简单的用例,即println(...)。
插件似乎对我来说有点矫枉过正,所以我希望还有另一种方法。
谢谢!
答案 0 :(得分:5)
sbt
是a recursive build system,因此只需将构建中所需的库依赖项放入project
文件夹:
your-project/
project/
build-dependencies.sbt
src/
main/ # etc.
build.sbt
libraryDependencies += "aws-sdk-name" % "etc. "%etc"
// Or in project/SomeBuildFile.scala
uploadTask := {
val s3Client = new AmazonS3Client(...);
s3Client.putObject(...)
}