大家好,我是acceleo的新手 在我的项目中,我有一个Java驱动程序类,该类调用不同的acceleo模板。一些模板的参数没有任何EObject类型。我正在为模板调用生成的Java模块的initialize()和doGenerate()函数。面临的问题是: initialize()期望第一个参数是Ecore对象,其余参数作为List。但是,正如我提到的,某些模板没有任何EObject参数。如何从Java应用程序调用此类模板?要解决上述问题,我调整了驱动程序和模板,将虚拟EObject作为第一个参数。然后,它将成功…

2020年11月15日 0条评论 19点热度 阅读全文

我需要开发一个独立的Acceleo生成器,但我不知道该如何启动。我已经在Acceleo项目中完成了生成器。 Acceleo项目包含generate.mtl文件,Generate.java文件和Activator.java文件。 我该怎么办? 解决方案如下: Acceleo从一开始就考虑到独立生成的设计。因此存在Generate.java文件。如果需要独立启动生成,只需使用其main或实例化两个必需的参数(目标文件夹和输入模型)并使用其doGenerate(...)方法: URI modelURI = URI.cre…

2019年8月27日 0条评论 18点热度 阅读全文

我正在尝试使用Acceleo生成一些代码。我正在内存中构建我的模型实体,我想为其生成代码。 现在,当Acceleo尝试将我的模型对象与模板函数的参数类型进行匹配时,它不匹配。这些类完全相同,但是由于Acceleo的程序包注册表和我的内存模型不同,因此它们不匹配,并且Acceleo表示找不到与主模板匹配的模型元素。 我可以解决这个问题吗?我可以强制将acceleo程序包注册表设置为内存中注册表吗?我可以在语义级别上强制类匹配(而不只是在Java ==上吗?) 解决方案如下: Acceleo仅在全局注册表中找不到模型时…

2019年1月17日 0条评论 23点热度 阅读全文