Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/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
Scala 如何更改集成测试的twirl模板的位置?_Scala_Sbt_Spray_Typesafe Stack_Twirl - Fatal编程技术网

Scala 如何更改集成测试的twirl模板的位置?

Scala 如何更改集成测试的twirl模板的位置?,scala,sbt,spray,typesafe-stack,twirl,Scala,Sbt,Spray,Typesafe Stack,Twirl,我正在尝试使用作为集成测试的一部分 我的集成测试有一个模仿真实世界服务的HTTP简化程序。为了在测试中实现这个简化器,我使用了嵌入式HTTP服务器,它需要基于twirl模板吐出响应 我的测试位于/src/it/scala,因此我自然希望将这些twirl模板放在/src/it/twirl中。这不起作用,因为twirl编译器忽略此目录 如果我将twirl模板放在/src/main/twirl中,一切都会正常工作-但我试图避免这种情况,因为我不想让这些模板扰乱生产包(这些模板只在测试中发挥作用,所以它

我正在尝试使用作为集成测试的一部分

我的集成测试有一个模仿真实世界服务的HTTP简化程序。为了在测试中实现这个简化器,我使用了嵌入式HTTP服务器,它需要基于twirl模板吐出响应

我的测试位于
/src/it/scala
,因此我自然希望将这些twirl模板放在
/src/it/twirl
中。这不起作用,因为twirl编译器忽略此目录

如果我将twirl模板放在
/src/main/twirl
中,一切都会正常工作-但我试图避免这种情况,因为我不想让这些模板扰乱生产包(这些模板只在测试中发挥作用,所以它们只应该在测试运行时在内部编译)


如何告诉twirl编译器在新目录中查找模板?

您应该在twirlCompile中使用
sourceDirectory,设置为:

sourceDirectory in twirlCompile <<= (sourceDirectory in Compile) / "twirl"

您可以提供您的构建定义吗?我们如何访问twirlCompile?您必须安装sbt插件才能使用
twirlCompile
范围。
sourceDirectory in twirlCompile in IntegrationTest := (sourceDirectory in IntegrationTest).value / "twirl"