В иерархии папок проектов SBT я должен разместить свои источники Scala в src/main/scala и проверить в src/tests/scala. Что я хотел бы внести в src/main/resources и src/tests/resources?
Для чего нужны "ресурсы" в проектах SBT?
Ответ 1
Все в этом каталоге будет упаковано в .jar, созданный при вызове package
.
Это означает, что вы можете использовать его для изображений, звуковых файлов, текста, всего, что не является кодом, но используется вашим кодом.
Ответ 2
Здесь приведен пример копирования текстового файла, хранящегося в ресурсе, в локальную файловую систему:
def copyFileFromResource(source: String, dest: File) {
val in = getClass.getResourceAsStream(source)
val reader = new java.io.BufferedReader(new java.io.InputStreamReader(in))
val out = new java.io.PrintWriter(new java.io.FileWriter(dest))
var line: Option[String] = None
line = Option[String](reader.readLine)
while (line != None) {
line foreach { out.println }
line = Option[String](reader.readLine)
}
in.close
out.flush
}