Итак, моя цель — создать графический DSL. Я создал модель ecore с помощью Eclipse Modeling Framework, после этого я использовал Sirius для создания инструмента графического моделирования, и у меня возникли проблемы с последним шагом, который генерирует код Java. Я хотел бы использовать Xtend для его создания. Любые предложения, что было бы лучшим способом сделать это, или некоторые полезные ссылки?
Генерация кода Java с помощью Xtend и Sirius
Ответы (1)
Есть два аспекта:
- сам генератор Xtend, который может быть разработан и протестирован независимо от Sirius. Он примет в качестве входных данных ваши файлы/модели DSL (а не файлы
.aird
или.odesign
из Sirius) и создаст все, что вы хотите. Я не могу помочь в этом аспекте. - интеграция генерации с моделлером на базе Sirius.
Предполагая, что вы знаете, как программно вызвать генератор Xtend, есть несколько способов запустить его изнутри Sirius. Например, вы можете использовать тип Всплывающее меню. инструмент, чтобы добавить запись в контекстное меню вашего моделлера, который затем может вызывать любой код Java, который вы хотите, и запускать оттуда генератор.
Вот что делает Ecore Tools для запуска генератора кода EMF GenModel: объявляет всплывающее меню, которое вызывает этот класс Java для выполнения фактической генерации.
person
pcdavid
schedule
06.06.2018
Что ж, когда я создаю экземпляр для своей модели ecore и указываю для него точку обзора, используя sirius в файле .odesign, я хотел бы сгенерировать код из диаграммы, которую я создаю, используя эту точку зрения.
- person user777; 06.06.2018
Я застрял на генерации кода из моего DSL-файла с помощью Xtend. Не могли бы вы предоставить ссылку на какой-либо контент, который мог бы мне в этом помочь.
- person user777; 06.06.2018