0

我目前正在结合 Acceleo 测试 Papyrus 的 DSL 功能,我目前遇到了一个问题。

我使用带有 Papyrus 的 UML 2 配置文件创建了一个简单的关系数据库元模型。然后我使用定义的元模型创建了一个可怕的库模型。

然后我创建了一个非常简单的 Acceleo 模板文件,我尝试在其中打印一些元素的原型:

[template public generateElement(p : Package)]
[comment @main/]
[file (p.name.concat('_debug.txt'), false, 'UTF-8')]
Creating file for package [p.name/]
Stereotypes: [for (st : Stereotype | p.getAppliedStereotypes()) separator(',')][st.name/][/for]
[/file]
[/template]

当我在我的模型上使用 OCL 控制台时,“getAppliedStereotypes()”工作得很好。但是当我运行我的 Acceleo 时,“Stereotypes”后面没有任何内容,即使生成器在没有任何错误代码的情况下终止......

你知道发生了什么吗?

4

1 回答 1

1

这很可能与我为这个问题指出的问题相同。Acceleo 世代以独立模式运行,因此您必须实际告诉它在哪里可以找到您正在使用的配置文件。

Acceleo FAQ有一些“标准”配置文件的示例,您必须为自己定义的配置文件遵循相同的过程。

于 2017-06-08T09:30:24.733 回答