Использование SBT 0.10.0 для генерации исходного кода с помощью ANTLR3 - PullRequest
0 голосов
/ 12 июня 2011

Как бы я использовал простой инструмент сборки (sbt) 0.10.0 для генерации любого вида исходного кода на основе грамматики ANTLR3?

Полагаю, мне нужно использовать плагин для чего-то подобного, если я хочу использовать сгенерированный код в том же проекте или подпроекте того же родительского проекта. Существуют ли плагины для SBT 0.10? ... или, может быть, другое решение без использования плагина?

1 Ответ

3 голосов
/ 17 июня 2011

Вам не нужно использовать плагин.

Сначала вам нужно определить antlr как зависимость.Затем вам нужно будет определить задачу создания источника в соответствии с этой страницей:

https://github.com/harrah/xsbt/wiki/Common-Tasks

Ваше определение задачи будет выглядеть примерно так:

sourceGenerators in Compile <+= sourceManaged in Compile map { dir =>
  <code to generate source from grammar files>
}

Где код для генерации вашего источника создаст новый объект org.antlr.Tool с вашими файлами в качестве аргумента для конструктора.После создания объекта Tool, вызовите метод process, и ваш источник должен быть сгенерирован.

...