问题标签 [xpand]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
859 浏览

eclipse - 如何在 Eclipse 中安装 Xpand?

我正在尝试在 Eclipse 中安装 Xpand。我正在通过更新管理器进行操作。然而,下载堆栈在 29% 左右。我使用以下链接:

http://download.eclipse.org/modeling/m2t/xpand/updates/nightly/

或者,我从此链接下载了 zip 文件:http: //www.eclipse.org/modeling/m2t/downloads/?project=xpand

然后我尝试执行安装-> 新软件-> 添加-> 存档,然后指向 zip 文件。我认为这会起作用,因为它使用本地 zip 文件。它再次停留在 29% 左右。

现在我正在考虑手动将插件添加到 Eclipse 但我不确定如何:

zip的内容是:

我知道我必须将功能和插件文件夹复制到eclipse文件夹中的相应文件夹中。但是我不知道如何处理二进制(文件夹)和 artifact.jar/content.jar 文件。

有人可以帮我吗?谢谢

0 投票
2 回答
654 浏览

eclipse - 如何同时使用 xtext 和 xpand

我有一个相当愚蠢的问题。我正在使用 xtext 来定义一个简单的 dsl 和 Xpand 来生成代码。

现在我想使用 xpand 来读取我的 dsl 模型并生成代码。我怎样才能做到这一点?

我阅读了很多教程,说我可以通过从向导创建一个新的 xtext 项目来简单地做到这一点。然后,除其他外,将创建以下项目:

org.xtext.example.domainmodel。发电机

在内部,生成器如下所示:

  • 源代码
    • 模型(放置 dsl 模型)
    • 模板(放置代码生成器的模板)
    • 工作流(工作流文件)

然后我简单地运行工作流程并从 dsl 文件生成代码。这很简单。

我的问题是,当我创建一个新的 xtext 项目时,我没有得到 org.xtext.example.domainmodel。发电机。项目。我只有以下四个:

org.xtext.example.domainmodel

org.xtext.example.domainmodel.sdk

org.xtext.example.domainmodel.tests

org.xtext.example.domainmodel.ui

那么我怎样才能生成 org.xtext.example.domainmodel。生成器文件???

0 投票
1 回答
122 浏览

java - 使用 Xpand 方法调用作为参数传递字符串

在 XPAND 模板中,我有一个调用,应该对采用字符串和对象的方法进行调用。

IE ,

对于上述方法,我要传递的字符串值是下面字符串的简化值: where , «getAddress(object)», return dynamic value。

"/begin DATA XETK DEFAULT_RASTERS «getAddress(object)» /end DATA"

如果我尝试按以下方式执行此操作,则会出现编译错误。

谁能帮助我,我怎样才能将这个字符串传递给方法?

谢谢 ,

问候, Shwetha

0 投票
0 回答
84 浏览

eclipse - 在 Xtext 中新创建的 DSL 项目中提供自定义罐子

这可能是一个重复的问题(请参阅Xtext Project: Add Jar Libraries with the Project Wizard Manager into the Classpath/Referenced Libaries of the clients Project),但由于声誉低,我无法评论原始问题。

因此,我关于类似主题的问题:

我创建了一个自定义 DSL,到目前为止它运行良好。我们的下一步是使用自定义库支持以这种语言创建的新项目,该库将作为创建项目的依赖项。这个库也是使用我们的 DSL 创建的,因此它与其他项目完全兼容。

该库将包含基本数据类型和其他类型以及生成的代码,这些代码将由“周边”项目的生成器使用。

我需要有关如何将此 jar 文件包含到新项目实例化过程中的提示。将它手动添加到创建的项目中就像一个魅力,但我想在这方面有一些自动化。

我正在为 DSL 创建一个自定义项目向导,但由于没有关于该主题的深入文档,我有点卡在那里。

谢谢诺夫

0 投票
1 回答
802 浏览

java - 线程“主”java.lang.NoSuchFieldError 中的异常:ruleMemo

我正在关注一个不错的 openArchitectureWare教程(它是关于使用 Xpand 从 EMF 模型中使用 oAW 生成代码)。

在最后的代码生成步骤,当它应该生成代码时(在定义Root.xpt模板后运行workflow.oaw时),我收到此错误:

我搜索了很多解决方案。他们中的大多数人说这是一个不兼容的问题,例如在类路径中有多个版本的特殊 jar 文件,但我在 eclipse插件文件夹中找不到任何重复的 jar 文件。真的是原因吗?如果是这样,在我的情况下重复的 jar 文件是什么?如果没有,还有其他解决方案吗?

(我已经在 eclipse-java-kepler-R-win32-x86_64 上安装了 oAW 4.3.1 和 Xpand 1.4.0)

0 投票
0 回答
212 浏览

xtend - 我们可以仅使用 Xtend2 进行基于模板的生成吗

我一直在尝试使用 Xpand/Xtend 生成一些基于模板的 C 代码。使用 Template.xpt,它使用一些 xtend 代码(如 Utils.ext)进行一些处理。我的问题是,而不是编写这样的方法:

或像这样调用 Java 方法:

有没有办法让我们仍然可以使用 Template.xpt 并使用 Utils.xtend 之类的东西来做同样的事情?我们可以使用 Xtend2 做到这一点吗?我已经看到 Xtend2 应该是 Xpand 的继任者。很难找到这方面的教程。我的意思是,像调用 Java 方法一样,我们可以在 Xpand 模板中调用 xtend 方法吗?

0 投票
2 回答
97 浏览

xtend - 如何根据列表引用元素的条件返回列表

我想返回一个由“SomeOtherObject”引用的“ListOfObjects”元素列表,它的(SomeOtherObject's)属性满足条件。我正在尝试这段代码:

“ListOfObjects”从“ParentObj”中提取特定对象的列表。但是上面的代码什么也没给我。请帮我弄清楚这里出了什么问题。

0 投票
1 回答
289 浏览

xpand - 如何在 xpand for AUTOSAR 中从另一个模型调用模型的模板

我一直在尝试开发一个 AUTOSAR 4.2.1 模块来使用 Xpand/Xtend 生成代码。我正在使用 arttext 演示器 1.6.0。但是我的疑问是,当我在演示器中创建一个新的 Ecu 平台项目时,在 PDF(ECUConfigurationParameters.arxml) 中没有找到定义变化点的概念(或者我可能不熟悉如何查找)。

默认情况下,我能够从 arxml 中获取参数值。但是,当在不同的构建后变体条件中定义的参数有多个值时,我只会得到第一个值。例如,如果 arxml 包含这个

如果我这样做,它会给我在 Xpand 中的“真实”价值Com.ComConfig.ComIpdus.ComIPduCancellationSupport。我无法访问第二个值“false”。

如何根据构建后的变体条件继续获取参数值?

我正在尝试执行以下操作:

这给了我一个错误,因为“找不到 xpand2::Type 类型的定义 ComOtherVarGen ”。我如何实现上述目标?请注意,我没有尝试向“MainObj”模板添加/修改任何功能,因此“AROUND”不是我想要的。

任何帮助是极大的赞赏。

0 投票
1 回答
54 浏览

xpand - Xpand 的最小 pom 依赖项是什么?

我使用 Xpand 在 maven 插件项目中生成代码。因此,我需要将所需的库添加为依赖项,pom.xml以便定义和使用 Xpand 模板。应该添加到 pom 的最小依赖项列表是什么?

0 投票
1 回答
210 浏览

java - 如何将代码生成从 xpand 迁移到 xtend(2)?

我们想要重新实现一个旧项目,该项目通过 xtext 和 xpand 使用代码生成。Xpand 应该被 Xtend(2) 替换,旧的 fornax 插件工作流执行应该被删除,替换为 xtext 和 xtend maven 插件。在旧项目中,我们使用了两个 maven 项目。第一个是 xtext 项目,它包含“ownLanguage”的语言定义,如果可能的话,应该只作为编译依赖项重新使用。第二个包含一个文件,其中包含所描述语言的模型、xpand 的旧工作流程和 xpt 文件。旧的工作流程使用这个 main.xpt 作为入口:

这里引用的 AttributesInterfaces.xpt

它用于从“fieldDef”列表中生成接口。此“fieldDef”列表取自 model.ownLaguage 文件,该文件使用依赖项中的语言。

有没有办法将这些 .xpt 文件重写为 .xtend 文件,以便在新项目中结合 xtext 和 xtend maven 插件使用这些文件来生成与旧项目中相同的文件?