p.s.
are you sure you
- added xtext.generator to the deps
- added ecoregenerator/setup stuff to the workflow
- do the directory cleaning right?
Workflow {
bean = org.eclipse.emf.mwe.utils.StandaloneSetup {
scanClassPath = true
platformUri = rootPath
}
component = org.eclipse.emf.mwe2.ecore.EcoreGenerator {
genModel = "platform:/resource/org.xtext.example.mydsl4/model/custom/MyDsl.genmodel"
srcPath = "platform:/resource/org.xtext.example.mydsl4/src"
}
....
// todo add cleaner
....
component = XtextGenerator {
// disable default cleaner
cleaner = {
enabled = false
}
p.s. i'd prefer to move the stuff to a completely separate plugin/project or at least or move the emf stuff to a separate source folder (in genmodel)
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="generated by Xtext 2.10.0" modelDirectory="/org.xtext.example.mydsl4/emf-gen"
....
Workflow {
bean = org.eclipse.emf.mwe.utils.StandaloneSetup {
scanClassPath = true
platformUri = rootPath
}
component = org.eclipse.emf.mwe.utils.DirectoryCleaner {
directory = "emf-gen"
}
component = org.eclipse.emf.mwe2.ecore.EcoreGenerator {
genModel = "platform:/resource/org.xtext.example.mydsl4/model/custom/MyDsl.genmodel"
srcPath = "platform:/resource/org.xtext.example.mydsl4/src"
}
component = XtextGenerator {
configuration = {
project = StandardProjectConfig {
baseName = "org.xtext.example.mydsl4"
rootPath = rootPath
runtimeTest = {
enabled = true
}
eclipsePlugin = {
enabled = true
}
eclipsePluginTest = {
enabled = true
}
createEclipseMetaData = true
}
code = {
encoding = "UTF-8"
fileHeader = "/*\n * generated by Xtext \${version}\n */"
}
}
language = StandardLanguage {
name = "org.xtext.example.mydsl4.MyDsl"
fileExtensions = "mydsl4"
referencedResource = "platform:/resource/org.xtext.example.mydsl4/model/custom/MyDsl.genmodel"
fragment = ecore2xtext.Ecore2XtextValueConverterServiceFragment2 auto-inject {}
fragment = org.eclipse.xtext.generator.adapter.FragmentAdapter {
fragment = org.eclipse.xtext.generator.ecore2xtext.FormatterFragment {}
}
serializer = {
generateStub = false
}
validator = {
// composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
}
}
}
}
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="src-gen"/>
<classpathentry kind="src" path="emf-gen"/>
<classpathentry kind="src" path="xtend-gen"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="bin"/>
</classpath>
source.. = src/,\
src-gen/,\
xtend-gen/,\
emf-gen/
bin.includes = model/generated/,\
.,\
META-INF/,\
plugin.xml
additional.bundles = org.eclipse.xtext.xbase,\
org.eclipse.xtext.common.types,\
org.eclipse.xtext.xtext.generator,\
org.eclipse.emf.codegen.ecore,\
org.eclipse.emf.mwe.utils,\
org.eclipse.emf.mwe2.launch,\
org.eclipse.emf.mwe2.lib,\
org.objectweb.asm,\
org.apache.commons.logging,\
org.apache.log4j,\
com.ibm.icu,\
org.eclipse.xtext.generator,\
org.eclipse.xtext.ecore