У меня довольно глупый вопрос. Я использую xtext для определения простого dsl и Xpand для генерации кода.Как использовать xtext и xpand togheter
Теперь я хочу использовать xpand для чтения моих моделей dsl и генерации кода. Как я могу это сделать?
Я прочитал много учебников, в которых говорится, что я могу просто сделать это, создав новый проект xtext от мастера. Затем, в частности, будет создан следующий проект:
org.xtext.example.domainmodel. генератор.
А внутри, генератор выглядит следующим образом:
- ЦСИ
- модель (место модель DSL)
- шаблонов (поместите шаблон для генератора кода)
- рабочих (рабочий файл)
Затем я просто запускаю рабочий процесс и генерирую код из файла dsl. Это легко и просто.
Моя проблема в том, что когда я создаю новый проект xtext, я не получаю org.xtext.example.domainmodel. генератор. проект. У меня есть только следующие четыре:
org.xtext.example.domainmodel
org.xtext.example.domainmodel.sdk
org.xtext.example.domainmodel.tests
орг. xtext.example.domainmodel.ui
Так как я могу создать org.xtext.example.domainmodel. генератор файл ???
я в основном означает, официальный Eclipse, учебник: HTTP://help.eclipse.org/helios/index.jsp?topic=%2Forg.eclipse.xtext.doc%2Fhelp%2Fgetting-started-xpand.html Создан проект: org.eclipse.xtext.domainmodel. который содержит следующие пакеты: model, templates, workflow. Я был в состоянии создать пакет генератора, добавив следующую строку в рабочем процессе: фрагмента = generator.GeneratorFragment автоматические инъецировать { \t \t \t \t generateMwe = истина Могу я просто создать модель и шаблоны пакеты и падения там моя модель и шаблоны? – panipsilos
@panipsilos: Просто чтобы все было ясно: вы действительно используете Helios? Или вы просто связались с файлами помощи Helios случайно? Поскольку версия Xtext/Helios довольно устарела, и особенно материал генерации кода был значительно изменен. Это также объясняет, почему вы пропустите проект генератора - у современного Xtext его нет. –
Правильно, я использую Eclipse galileo. Я заметил, что проект устарел. Я тщетно пытался настроить новую версию xtext для совместной работы с xpand, без везения Я заметил, что теперь xtext (по крайней мере, в версии Galileo) поддерживает xtend из коробки. Поэтому я переключился на xtend. – panipsilos