我想在.Scala / .sbt项目文件的taskKey
中使用第三方库。
我的问题是当我尝试导入文件时出现编译错误。
我的目标很简单我想添加一个使用sbt cli执行某些逻辑的任务键,我已经尝试了使用sbt command line application的示例,但它并不能满足我的需要,因为我需要打包应用程序来测试代码。
那么如何在加载阶段将依赖项导入sbt cli?
示例:
val customTaskKey = TaskKey[Unit]("customTaskKey", "Runs customTaskKey")
lazy val myProjectSettings: Seq[Setting[_]] = Seq(
customTaskKey :={
val instance : ThirdPartLibraryClass()
// ^
// Symbol not found : compilation error
}
)
答案 0 :(得分:3)
您可以通过正常方式添加相关性,但在my-project/project/plugin.sbt
文件中而不是my-project/build.sbt
:
libraryDependencies ++= Seq(
"thirdparty" % "library" % "1.0"
)
如果您的项目是foo
,foo/project
是另一个SBT项目,它为foo项目构建SBT构建。因此,foo/project
文件夹中的配置适用于foo
的构建,而不适用于foo
本身。