2016-12-27 6 views
2

Я инициировал приложение play-framework, используя активатор. Затем я установил версию scala в файле build.sbt на scalaVersion := "2.11.7".Почему существует множество «целевых» папок в одном приложении для игровых платформ?

Теперь у меня есть три разные целевые папки в моем приложении, две из которых имеют подпапку scala- {version}, как показано ниже.

/root 
├──project 
│ ├──project 
│ │ └──target    
│ └──target 
│  └──scala-2.10 
└──target 
    └──scala-2.11 

Является ли это правильной структурой папок?

Если нет, существует ли какой-либо автоматизированный инструмент/команда для реорганизации структуры каталога проекта?

Любые рекомендации по оптимальной практике для построения дерева каталогов плей-рамочный, избегая ненужных файлов и папок будут оценены :)

+2

, связанные с некоторое объяснение: http://stackoverflow.com/questions/33902998/multiple-target-directories-in-sbt-project-build – philwalk

ответ

1

Короткий ответ ... Вам нужно все эти каталоги.

На самом деле существует несколько построек. Play использует SBT для создания вашего проекта, а SBT создает проект сборки, который хранится под каталогом проекта. Это проект SBT по своему собственному праву, который можно произвольно настроить (например, добавить свои собственные задачи сборки, ссылки на плагины sbt и т. Д.).

Приложение для воспроизведения компилирует ваши источники с помощью scala 2.11. Сама сборка SBT - это отдельный процесс сборки, основанный на другой версии scala (2.10).

Смотрите этот ответ на аналогичный вопрос, который обеспечивает несколько более подробное объяснение:

Multiple target directories in sbt project build

Вот официальная страница SBT, которая обсуждает вопрос:

http://www.scala-sbt.org/1.0/docs/Organizing-Build.html