我正在尝试构建一个maven acceleo generator
. 生成器由多个 acceleo 项目(maven 中的工件)组成,具有相互依赖关系。
我遇到了 emtl 文件之间的依赖关系的问题。在运行时,我收到错误消息,指出 mtl 中存在编译错误(没有)。我猜它可能是编译后的 emtl 文件中的 href。
有一个 acceleo maven 编译插件允许这些是:
a) 绝对路径(最终通过 maven 存储库)
b)'platform:/plugin/...'
路径。
(a) 如果 acceleo 项目(maven 工件)构建在与我们进行生成的机器相同的机器上,但如果 maven 存储库的位置发生变化,我们就会遇到问题。因此,部署 Maven 工件最终变得毫无意义。
(b) 不起作用,因为从 Maven 内部运行,'platform:/plugin/'
无法解决。
我试图覆盖 中的'createURIConverter'
方法AbstractAcceleoGenerator
,然后使用 aURLClassLoader
我们可以解码'platform:/plugin/'
href 并找到正确的 emtl 文件。我可以验证这似乎有效,但是我仍然收到报告
"org.eclipse.acceleo.engine.AcceleoEvaluationException: Unresolved compilation error in generation module"
有什么建议么?