我创建了一个sbt项目来使用akka-http学习简单的增删改查操作。首先,我添加了简单的路线来检查它是否有效。
通过运行
sbt run
命令,我发现它在本地运行没有任何错误。
但是当我对项目进行一些更改(例如:将
println
语句添加到正在运行的代码中)时,它不会自动编译。
每次我都必须退出(ctrl+c
)正在运行的 sbt。再次运行即可查看更新后的代码。
所以我的问题是如何在运行项目时自动编译 sbt 项目。
谢谢你。
据我所知,sbt 默认情况下不处理它,但有一个插件:sbt-revolver。一旦您的应用程序的源代码发生任何更改,它将触发您的应用程序的重新启动。
只需添加
addSbtPlugin("io.spray" % "sbt-revolver" % "0.9.1")
在您的
build.sbt
中,然后使用以下命令启动应用程序:
sbt ~reStart
现在你可以像这样使用它了
cd
进入您的项目根目录sbt
这将打开控制台~run
。 ~
是可选的,它会导致 sbt 在每个文件保存时重新运行,从而实现快速编辑/运行/调试周期。 sbt 还会生成一个目标目录,您可以忽略它。当您完成此项目的实验后,按 [Enter] 中断运行命令。然后输入 exit 或按 [Ctrl+D] 退出 sbt 并返回到命令行提示符。