I have an xtext DSL created from an existing ecore model and built with maven, but opening the editor for the DSL in the deployed user environment results in an injection exception (see attached). What could cause such exceptions?
The error occurs only on the deployed feature in a user environment (which has all the dependencies installed, including the ecore model on which the DSL is based).
One of the exceptions mentions a missing '.xmi' file, but that doesn't seem to be generated by Xtext, and is not present in the development environment where the editor does work.
I'm not sure if this could be the reason but in my pom files I have configured the tycho-compiler-plugin so that it doesn't copy resources, and therefore only class files in source folders are packaged. I'm wondering if there are some non-class files generated by xtext and/or xtend that we should be packaging? Do we need to package the .xtextbin/.xtendbin files?
I'm also attaching the workflow, in case that provides any hints.
The gen model is in a separate plugin (as the grammar was generated from an existing ecore model, not the other way around), and it is packaged in that plugin.
We don't want our deployed artifacts to include anything other than what is strictly necessary. Using the tycho defaults results in packaging xtend source files, ._trace files, the ANTLR .g and .tokens, and other things that are not needed at runtime.
By the way, there are both .xtextbin files and .xtendbin files. Are both necessary, or just the .xtextbin file(s)?