Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dependencies 编译后要执行的任务_Dependencies_Sbt_Task - Fatal编程技术网

Dependencies 编译后要执行的任务

Dependencies 编译后要执行的任务,dependencies,sbt,task,Dependencies,Sbt,Task,我需要在编译任务完成后执行任务myTask。 我尝试了在这个论坛上发现的一些东西: 仅当在sbt提示符上显式调用“sbt myTask”时,才使用dependsOn-->工作。但我需要在执行编译时自动执行我的任务 使用triggeredBy-->myTask永远不会被调用 用另一种方式工作就像一种魅力,尽管这不是我想要的。 我是说,做: (编译中编译)这里有一种修改编译任务以调用另一个任务的方法。在build.sbt中添加以下内容 lazy val anotherTask = taskKey

我需要在编译任务完成后执行任务myTask。 我尝试了在这个论坛上发现的一些东西:

  • 仅当在sbt提示符上显式调用“sbt myTask”时,才使用dependsOn-->工作。但我需要在执行编译时自动执行我的任务
  • 使用triggeredBy-->myTask永远不会被调用
用另一种方式工作就像一种魅力,尽管这不是我想要的。 我是说,做:


(编译中编译)这里有一种修改编译任务以调用另一个任务的方法。在
build.sbt
中添加以下内容

lazy val anotherTask = taskKey[Unit]("another task")

anotherTask := println("hello")

compile in Compile := {
    val compileAnalysis = (compile in Compile).value
    anotherTask.value
    compileAnalysis
}

triggeredBy(编译中编译)
应该做你想做的事。你能提供一个build.sbt不起作用的示例吗?你能提供你的
build.sbt
的简化版本吗?Marios,Lykathia。非常感谢您对这个问题的跟进。以下是我正在做的:lazy val CompileScalarStyle=TaskKey[Unit](“CompileScalarStyle”)CompileScalarStyle:=ScalastylePlugin.scalastyle.in(Compile).toTask(“”)Compile in Compile:={val CompileAnysis=(Compile in Compile.value CompileAnysis}按照Mario的建议。但它仍然不起作用。CompileScalStyle任务根本没有被调用。我也尝试过类似的方法:compileScalStyle:=ScalastylePlugin.scalastyle.in(Compile).toTask(“”.triggeredBy(Compile in Compile),但没有成功。谢谢嗯,我明白了。操作顺序重要吗?要先编译
然后再编译
吗?我确信我所拥有的将执行这两项任务。但我认为SBT将同时运行它们(因此该命令将不会得到尊重)。是的,顺序很重要。事实上,如果我这样做:(在编译中编译)并且当我使用初始方法(尝试先执行编译任务,然后执行CompileScalStyle任务的方法)时,只运行编译阶段。谢谢。