sbt test正在拾取错误的资源文件夹路径

时间:2016-06-24 03:45:46

标签: scala intellij-idea

我有一个测试

val url = getClass.getResource("/test.jpg")
val path = url.getPath

使用sbt test,错误地将路径标识为 /Users/Me/IdeaProjects/myProject/target/scala-2.11/myProject_2.11-0.1.0-SNAPSHOT-tests.jar!/test.jpg

然而在Intellij中,路径是正确的 /Users/Me/IdeaProjects/myProject/target/scala-2.11/test-classes/test.jpg

如何让sbt获取正确的资源路径?

1 个答案:

答案 0 :(得分:1)

最可能的原因是您的SBT版本中有exportJars := true

  

默认情况下,项目会导出包含其资源和已编译类文件的目录。将exportJars设置为true以改为导出已打包的jar。例如,

exportJars := true
     

jar将由运行,测试,控制台和其他使用完整类路径的任务

使用

http://www.scala-sbt.org/0.13/docs/Howto-Package.html)。如果您想专门针对测试进行更改,请使用exportJars in Test := false