gpt4 book ai didi

java - Xtext运行时编译

转载 作者:行者123 更新时间:2023-12-02 07:27:01 26 4
gpt4 key购买 nike

我试图理解Xtext并了解它是否符合我的需求。我正在寻找一个工具,它允许我创建一个 DSL,可以在执行期间在我的应用程序中进行编译和评估。

Xtext 似乎是一个非常好的工具,因为它为此提供了很多东西(语法编辑器、IDE 集成、解析器生成器等)。据我了解,Xtext 可以为我生成解析器和 IDE 扩展,但如果我需要编译器,我必须自己编写它,或者创建 Java 映射,从而生成我可以编译的生成的 Java 源文件。

我不知道是否可以将 Xtext 的解析器和生成器嵌入到我的应用程序中,并在运行时编译用 DSL 编写的脚本,而无需预编译它们。目标是将脚本与我的应用程序一起发送,使发布后的更改成为可能。

最佳答案

是的,这是完全可能的,而且实际上非常简单。所有核心组件(即非 IDE 功能)均独立于 Eclipse。文档中有示例 Java 代码,展示了如何执行此操作。这基本上是一个问题或

// creating the injector
Injector injector = new MyLanguageStandaloneSetup().createInjectorAndDoEMFRegistration()

// obtain a resource set
XtextResourceSet resourceSet = injector.get(XtextResourceSet.class);

// load file
Resource resource = resourceSet.getResource(URI.create("path/to/file.mylanguage"), true);

// obtain root AST element
MyModel model = (MyModel) resource.getContents().get(0);

关于java - Xtext运行时编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13442808/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com