Скопируйте исходные файлы в целевой каталог с помощью SBT - PullRequest
9 голосов
/ 15 апреля 2011

Я недавно решил использовать SBT для создания существующего проекта.В этом проекте у меня есть несколько файлов .glsl в пакетах scala, которые мне нужно скопировать на этапе компиляции.

Проект структурирован так:

- myapp.opengl
   - Shader.scala
- myapp.opengl.shaders
   - vertex_shader.glsl
   - fragment_shader.glsl

Правильна ли эта файловая структура?для SBT или мне нужно поместить файлы .glsl в другой каталог.И знаете ли вы чистый способ копирования этих файлов в целевую папку?

Я бы предпочел не помещать эти файлы в каталог ресурсов, поскольку они (не скомпилированные) исходные файлы

Спасибо

1 Ответ

9 голосов
/ 15 апреля 2011

Я бы не рекомендовал помещать эти файлы в src/main/scala, поскольку они там не принадлежат. Если вы хотите сохранить их отдельно от файлов ресурсов, вы можете поместить их в произвольный путь, например, src/main/glsl и добавьте следующие строки в определение проекта, чтобы скопировать их в выходной каталог:

val shaderSourcePath = "src"/"main"/"glsl"

// use shaderSourcePath as root path, so directory structure is
// correctly preserved (relative to the source path)
def shaderSources = (shaderSourcePath ##) ** "*.glsl"

override def mainResources = super.mainResources +++ shaderSources
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...