我将一个 dsl (A) 翻译成另一个 dsl (B) 在 xtext 中创建。
A 的代码生成看起来像
override void doGenerate(Resource resource, IFileSystemAccess2 fsa, IGeneratorContext context) {
fsa.generateFile('transformed.wp', resource.allContents.filter(typeof(ActionSystem)).map [
compile
].join(', '))
val rs = new ResourceSetImpl();
val r = rs.getResource(URI.createPlatformResourceURI('transformed.wp'), true);
val List<EObject> contentOfYourFile = r.getContents();
}
错误是然后我调用URI.createPlatformResourceURI('transformed.wp')
文件找不到。
如何访问文件“transformed.wp”。
这个想法是在生成代码后将 A 的部分 emf 模型复制到 B 的模型中。