对于Java中的服务器应用程序,我希望允许我的用户使用自己定义的域特定语言编写一些脚本。 Xtext似乎是我想要的东西,它描述语法的方式很简单,并且可以让我描述所需的语言。

我的问题是Xtext对我来说看起来很重。我需要一个特殊的eclipse发行版,为了测试它是否启动了一个新的eclipse实例,我需要编写一个代码生成器=> overkill。

我想要的就是这样

<dependency>
  <groupId>org.something</groupId>
  <artifactId>dslparser</artifactId>
  <version>mature</version>
</dependency>

DslParser parser = new DslParser(myGrammar);
SomeKindOfGenericKModell modell = parser.parse(userInput);


Xtext提供了吗?如果是,是否有教程?如果不是,那有什么选择?我对ANTLR进行了简短介绍,但据我所知,它的语法并不像xtext那样富有表现力。是吗?

最佳答案

是的,如果您不想使用UI,则Xtext不依赖于Eclipse。它依赖于Guice和其他库,例如但是,Antlr或某些Eclipse框架的东西(所有UI / OSGi独立)。

关于java - 轻巧使用xtext,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19939690/

10-09 02:09