【发布时间】:2023-03-27 09:10:01
【问题描述】:
在运行sbt 之后,我正在尝试运行某些任务和启动服务器。我希望能够在终端中运行命令来做到这一点。我该如何定义它们?插件是做到这一点的正确方法吗:
我看到一些这样的代码:
object DoThing extends AutoPlugin {
object autoImport {
val vpnCheck = taskKey[Boolean]("Check for a VPN connection.")
}
import autoImport._
override lazy val projectSettings = Seq(
vpnCheck := {
doVpnCheck()
}
)
projectSettings 方法在做什么?是插件吗?
来自插件页面:
插件是在构建定义中使用外部代码的一种方式。插件可以是用于实现任务的库(您可能使用 Knockoff 编写降价处理任务)。插件可以定义一系列 sbt 设置,这些设置会自动添加到所有项目或为选定项目显式声明。例如,插件可能会添加一个 proguard 任务和相关的(可覆盖的)设置。最后,插件可以定义新的命令(通过命令设置)。
但我似乎无法弄清楚这一点。
【问题讨论】:
标签: scala