即使我有不匹配的条件来运行它,SBT也会评估输入任务

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了即使我有不匹配的条件来运行它,SBT也会评估输入任务相关的知识,希望对你有一定的参考价值。

这是我的代码:

run in Compile := { true match {
    case true => (run in Compile).evaluated
    case false => (run in Compile).evaluated
}}

并输出:

> run
[info] Running Main 
[info] Running Main 
Main.main
Main.main

我希望SBT只评估一次(run in Compile)!但它运行了两次!为什么!我错过了什么吗?

答案

我的错!宏的行为是对的!我必须使用taskDyn来定义我的任务:https://www.scala-sbt.org/1.x/docs/Tasks.html#Dynamic+Computations+with

以上是关于即使我有不匹配的条件来运行它,SBT也会评估输入任务的主要内容,如果未能解决你的问题,请参考以下文章

Docker容器中的Intellij CE 2018.2 + SBT:远程调试断点无法正常工作

即使没有找到匹配项,MS Access 记录集也会继续搜索?

即使满足条件并且即使目标表和源表中的字段已经存在,雪花合并也会添加数据

在 SQL 中检查 IF 条件,即使它不匹配

即使在 cli 上间接指定了多次,如何让 sbt 只运行一次任务?

sbt失败了java.lang.NoClassDefFoundError:sbt / ConsoleOut $