我目前正在评估EMF。因此,我在Eclipse中创建了一些玩具模型并生成了相应的代码。
由于我的工作流程不包含任何与Eclipse相关的工具,因此我想坚持使用基于gradle的非玩具项目工作流程。是否有可能并且通过没有Eclipse的Gradle生成EMF模型(通过带注释的Java提供)是否有意义?
答案 0 :(得分:3)
Xtext可以使用gradle生成xtext语言。此选项的一部分是运行mwe2工作流程。 有一个mwe工作流组件来运行ecore 2 java生成器(EcoreGenerator)
因此您应该能够编写使用此组件的工作流并通过gradle进行生成。 不幸的是,如果将手工工作粘在一起
Workflow {
bean = org.eclipse.emf.mwe.utils.StandaloneSetup {
platformUri=".."
}
component = org.eclipse.emf.mwe.utils.DirectoryCleaner {
directory ="src/main/java/sample"
}
component = org.eclipse.emf.mwe2.ecore.EcoreGenerator {
generateCustomClasses = false
genModel = "platform:/resource/org.xtext.example.mydsl3/model/sample.genmodel"
srcPath = "platform:/resource/org.xtext.example.mydsl3/src/main/java"
}
}
e.g。您可能必须调整genmodel关于生成的源应该去的地方等。