Можно ли использовать Xtext без eclipse?

У меня есть DSL (реализованный с ANTLR), для которого мне нужно написать редактор поддержки контента/автозаполнения. Я портировал прототип своей грамматики в Xtext, и я вполне доволен качеством создаваемого им редактора.

К сожалению, я не могу использовать Eclipse в качестве моего редактора. Вместо этого я хотел бы использовать грамматику Xtext для создания некоторых артефактов, которые я мог бы использовать за пределами Eclipse. Из того, что я видел, минимальный набор артефактов, которые мне нужны, это:

  • модели EMF,
  • синтаксические анализаторы,
  • * ProposalProviders и
  • необходимые библиотеки.

Кто-нибудь пытался использовать Xtext вне Eclipse? Сколько внешних библиотек зависит от?

Спасибо!

Ответ 1

для внутренней части (парсер/сериализатор/форматтер/метамодель и т.д.) это не проблема, и для этого потребуется около 30 библиотек /17 МБ. для части ui требуется затмение.

вы можете использовать мастер экспорта → runnable jar file, чтобы получить все зависимые библиотеки, которые вам нужны.

Ответ 2

По существу тот же самый ответ, что и христианин, это просто указатель на более подробное описание Как развернуть Xtext в безгласную равнину-Java Окружающая среда. Если вы заинтересованы в использовании артефактов, созданных в грамматике, вы можете найти фрагмент в часто задаваемые вопросы XText

Ответ 3

Вы можете использовать режим командной строки для приложения xtext. Для этого: вы должны в файле описания рабочего процесса GenerationYourDSLName.mwe2 следующие строки

// generator API
fragment = generator.GeneratorFragment {
  generateJavaMain = true
}

затем создайте артефакты xtext

Ответ 4

С Xtext 2.9 можно создать свою языковую инфраструктуру, не зависящую от Eclipse (и, возможно, таргетинг на IntelliJ IDEA или в Интернете), используя простой старый Maven/ Gradle. Просто снимите флажок плагина Eclipse при создании проекта Xtext и установите предпочтительную систему сборки в Maven или Gradle.