簡體   English   中英

在build.sbt中編寫SBT任務時,如何使用庫依賴項?

[英]When writing SBT tasks in build.sbt, how do I use my library dependencies?

如何將SBT任務添加到使用外部依賴項的build.sbt?

例如,我想編寫一個利用AWS SDK客戶端的任務

libraryDependencies += "aws-sdk-name" % "etc. "%etc"

uploadTask := {
   val s3Client = new AmazonS3Client(...);
   s3Client.putObject(...)
}

但是,可以理解的是編譯錯誤,因為依賴關系不會由sbt生成!

任務的文檔僅限於非常簡單的用例,即println(...)。

一個插件對我來說似乎有點矯枉過正,所以我希望還有另一種方式。

謝謝!

sbt一個遞歸構建系統 ,所以只需將構建中所需的庫依賴項放入project文件夾中:

your-project/
    project/
        build-dependencies.sbt
    src/
        main/ # etc.
    build.sbt

集結dependencies.sbt

libraryDependencies += "aws-sdk-name" % "etc. "%etc"

build.sbt

// Or in project/SomeBuildFile.scala
uploadTask := {
  val s3Client = new AmazonS3Client(...);
  s3Client.putObject(...)
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM