后我能够自动执行任务与编译前:SBT应用任务编译
compile in Compile <<= (compile in Compile).dependsOn(myTask)
我该怎么做相同的,但编译后?
我知道我可以做:
compile in Compile <<= (compile in Compile) map{x=>
// post-compile work
doFoo()
x
}
执行任意Scala代码,但我需要在编译事件发生
做这样的事情来自动执行目标任务本身:
val foo = TaskKey[Unit]("foo", "...")
val fooTask = foo <<= scalaInstance map {si =>
...
} dependsOn(compile in Compile)
如果我从sbt>提示符键入“foo”,即在编译之后执行任务,但目标是将其自身挂接到编译任务,因此无论何时编译发生,编译完成后都会自动调用foo任务。
这是可能的,还是我以错误的方式去解决内置的编译任务?
你能解释一下用例吗? –
@MarkHarrah,Play有一个限制,只能在运行时生成子项目的JavaScript反向路由。我需要在编译时生成一个静态文件的路由,我已经完成了这个工作,除了将任务挂钩为后编译操作(即我需要先编译应用程序,否则不会考虑新路由在路线生成任务)。 – virtualeyes
正在生成的这些文件是否考虑了资源? –