我的build.sbt
文件是这样的:
lazy val root = (project in file(".")
.settings(libraryDependencies ++= Seq(...))
和第二个文件(在同一文件夹中),如下所示:
lazy val releaseStuff: Def.Setting[Task[Unit]] = DockerSbtPlugin.releaseStuff
lazy val root = (project in file(".").settings(releaseStuff)
但是命令releaseStuff
无法识别,我得到:
sbt:sitemap> releaseStuff
[error] Not a valid key: releaseStuff (similar: releasePuff, releaseCough)
[error] releaseStuff
[error] ^
我做错了吗?
请注意releaseStuff
取决于插件,因此如果放在project
文件夹中,则无法编译。
答案 0 :(得分:1)
我不知道release.sbt
是什么,但您可以在releaseStuff
文件夹中配置project
。您只需要明确导入适用的插件包。
例如,当我想将native-packager
用于docker时,我使用
project/docker.scala
文件
import sbt._
import Keys._
import com.typesafe.sbt.packager.docker._
import com.typesafe.sbt.packager.universal.UniversalPlugin.autoImport._
object Docker {
lazy val settings = Seq(
...
)
}
并将其包含在build.sbt
lazy val root = (project in file(".")
.settings(
name := "widget",
Docker.settings
)
)