首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >覆盖sbt的“叉”设置

覆盖sbt的“叉”设置
EN

Stack Overflow用户
提问于 2021-09-01 19:10:29
回答 2查看 126关注 0票数 2

我有一个Akka应用程序,在build.sbt中有一个build.sbt设置。因此,当我需要调试代码时,我手动将其设置为false。这是很容易忘记的事情。

有办法从命令行重写fork设置吗?例如,在运行sbt clean run时。我已经读过,它可以创建一个单独的任务,而覆盖叉只用于该任务。在后一种情况下,clean run任务会是什么样的呢?

更新:抱歉混淆了。马科回答后,我意识到我的票是不完整的。我想要一种在非交互shell中设置这个的方法。现在我有一个IntelliJ sbtTask (它还接受环境变量等)。为此,我只需单击调试按钮即可运行该应用程序。任务本身只有两个单词-- clean run,但是应该创建一个单独的单词,这样就可以了。

EN

回答 2

Stack Overflow用户

发布于 2021-09-01 20:09:19

考虑set命令,例如shell中的命令

代码语言:javascript
复制
set fork := false; clean; run

改变将坚持直到

重新启动sbt,重新加载构建,或者由另一个set命令重写该设置或由会话命令删除。

票数 2
EN

Stack Overflow用户

发布于 2021-09-02 21:09:23

马里奥的回答很好,但我很好奇是否有一个单行指令,我可以与我的团队分享。我想,多亏了Sbt文档中的这个常见问题项目,我终于找到了它。

build.sbt中,您可以添加以下内容:

代码语言:javascript
复制
lazy val runWithForkFalse = taskKey[Unit]("Run application with `set fork:= false` for debugging purpose.")

runWithForkFalse / fork := false

fullRunTask(runWithForkFalse, Compile, "com.Main")

然后,在InelliJ中,您可以创建一个只有两个单词clean runWithForkFalse的Sbt任务,然后单击它们的调试图标。当然,您也可以从命令行运行sbt clean runWithForkFalse

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69019384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档