我有一个Spray应用程序,其基本前端组件包含src / main / frontend中的源代码,以及Spray默认资源位置src / main / resources中的已部署版本(已编译的sass,minification等)。我想将资源目录更改为仅用于Revolver的re-start
任务的src / main / frontend,以便在开发时更快地查看更改。
我尝试添加设置
resourceDirectory in Revolver.reStart <<= baseDirectory(_ / "src" / "main" / "frontend")
但它似乎没有效果。我猜是因为resourceDirectory
是Compile
范围内的设置,而不是Revolver本身的设置。在SBT控制台中:
> reStart:resourceDirectory
[info] /Users/cartew01/workspace/applaudio-spray/src/main/frontend
> compile:resourceDirectory
[info] /Users/cartew01/workspace/applaudio-spray/src/main/resources
有谁知道如何为re-start
任务更改此内容,而不是其他任何内容?可能通过创建一个自定义任务,调用其他设置重新启动?
感谢您的帮助。
答案 0 :(得分:0)
您应该将另一个资源目录添加到reStart中的fullClasspath
,例如(fullClasspath in Revolver.reStart) += (WebKeys.public in Assets in web).value
,或者fullClasspath in Revolver.reStart += baseDirectory(_ / "src" / "main" / "frontend")
- 实际上,getFromResourceDirectory
和{{1}将从类路径中提供内容。
为了更好地理解它,我建议运行getFromResource
- 它取决于inspect reStart
,而compile:products
又取决于compile:copyResources
,compile:resourceDirectories
又取决于{{1}}。因此,reStart将使用编译器生成的任何内容,即从某处复制的资源。上面的解决方案似乎更容易