繁体   English   中英

从xtext交叉链接Java类

[英]cross link Java classes from xtext

问题

我想要一个xtext DSL,可以在其中交叉链接到JAR中包含的Java类型。

范例

假设我们有一个简单的DSL,例如:

Object:
    'object' name=ID '{'
    property=Property
    '}';

Property:
    'property' name=ID '{'
    object=ObjectOrInclude
    '}';

ObjectOrInclude:
    Include | Object;

Include:
    'include' include=[Object|ID];

另外,我们的类路径中有一个JAR,提供了几个实现接口的类

public interface IObject{
…
}

交叉链接包括应该允许我们引用来自我的DSLS的EObject,还可以引用JAR提供的类。 我假设必须以某种方式将Java接口集成到xtext索引中,并为每个类提供一个ID和ResourceDescription,以便链接程序可以解析这些类。 但是,我不知道如何实现索引的这种扩展。

问题

我如何将Java类放入xtext索引中,以便进行交叉链接?

通常这是通过使用Xtype或Xbase完成的。 不幸的是,您想同时引用EObject和JvmType。 您可以通过实现将您的对象映射到JvmTypes的jvmmodelinferrer来实现。 看看https://www.eclipse.org/Xtext/documentation/104_jvmdomainmodel.html了解如何做到这一点

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM