是否可以在没有eclipse的情况下使用Xtext?

时间:2011-10-20 18:49:12

标签: antlr xtext

我有一个DSL(用ANTLR实现),我需要编写内容辅助/自动完成编辑器。我已将我的语法原型移植到Xtext中,我对它生成的编辑器的质量非常满意。

不幸的是,我不能使用Eclipse作为我的编辑器。相反,我想使用Xtext语法生成一些我可以在Eclipse之外重用的工件。从我所看到的,我需要的最小工件集是:

  • EMF模型,
  • 解析器,
  • * ProposalProviders和
  • 所需的图书馆。

有没有人试图在Eclipse之外使用Xtext?它依赖多少个外部库?

谢谢!

4 个答案:

答案 0 :(得分:9)

对于后端部分(解析器/序列化器/格式化程序/元模型等),这不是问题,它将需要大约30个库/ 17MB。 ui部分需要eclipse。

你可以使用导出 - > runnable jar文件向导,以获取所需的所有依赖库

答案 1 :(得分:8)

基本上与Christian给出的答案相同,这只是指向How to Deploy Xtext to a Headless Plain-Java Environment的更详细描述的指针。如果您对使用语法生成的工件感兴趣,可以在XText FAQ

中找到一个片段。

答案 2 :(得分:1)

您可以使用xtext应用程序的命令行模式。为此目的:您可以在工作流描述文件GenerationYourDSLName.mwe2中找到以下行

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

然后生成xtext工件

答案 3 :(得分:1)

使用Xtext 2.9,可以使用普通的旧Maven / Gradle构建独立于Eclipse的语言基础结构(并可能以IntelliJ IDEA或Web为目标)。在创建Xtext项目时,只需取消选中 Eclipse插件 facet,并将首选构建系统设置为 Maven Gradle