Можно ли использовать 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.