Using Ecore2Java with dependent models [message #1844203] |
Mon, 06 September 2021 10:28 |
|
I have a set of models that have inter-model dependencies, that is:
a client EPackage in one Plugin containing EClasses which are subclasses of EClasses residing in another EPackage inthe supplier Plugin.
I want to generate the two plugins using one execution of Ecore2Java, without installing the supplier in the runtime first.
I do not want to duplicate the classes, but use the OSGI manifest and Java package import mechanism.
- Is this possible?
- Is there an example for such execution?
- Where could I find it?
I would believe that this is a fairly basic requirement for CI/CD with models. So I am surprised not to find any examples.
[Updated on: Mon, 06 September 2021 10:29] Report message to a moderator
|
|
|
|
Re: Using Ecore2Java with dependent models [message #1844208 is a reply to message #1844206] |
Mon, 06 September 2021 11:19 |
|
I am looking for an example of an ant build that performs invocations for a supplier model, and a client model in sequence. On the client call, the supplier is generated and hence available in source form. I have not found an example of such an execution in an ant script.
I am aware and have used the supplier models in the target platform. I want to avoid this.
I am also aware that Ecore2Java only uses one genmodel per build and can reference multiple ecore models.
I hope this clarifies my intent.
[Updated on: Mon, 06 September 2021 11:25] Report message to a moderator
|
|
|
|
|
Re: Using Ecore2Java with dependent models [message #1844216 is a reply to message #1844215] |
Mon, 06 September 2021 13:13 |
|
That is exactly the detail had required. Thanks. If I get this to work, where would be a good place to deposit the example?
I am using Epsilon toolchain to prepare that step and have easy access to this information. I will generate the metamodel and add the reference.
I find it peculiar that there is no integrated approach to building componentized models. Is that not what this is all about.
Regarding use of ant I find that this is the only platform that allows to use multiple MDE tools and toolchains and make use of the platform facilities at the same time. Of course that only works if people do not spaghetti-glue their build-tools to the user interface.
Too many islands and little kings. Too much mouse-clicking, too little CI.
I wish I had a Gradle implementation with OSGI access akin to the antrunner application, but no time to do something so fundamental.
Again, thanks for the help.
[Updated on: Mon, 06 September 2021 13:22] Report message to a moderator
|
|
|
|
|
|
Re: Using Ecore2Java with dependent models [message #1844400 is a reply to message #1844366] |
Mon, 13 September 2021 05:34 |
|
Hi Ed,
I know how awful Ant is. Really do. I am not endorsing its design at all. My aim is to use it as a dispatch point to get a wide scope of MDE tools.
The reason I was after Ecore2java is that Epsilon's Eugenia Ant support, which is excellent, is currently intertwined with, you guessed it, the Eclipse workbench. While this gets sorted out, I needed a way to build our four-level model hierarchy. So I thought that like in a car, the on-board tools may be ugly and cumbersome, but must work.
On prior topic: To mitigate the horrific nature of Ant, I have set up a structured development method in our company. During development time, this gives clarity.
We have exploited Tycho's Test Environment in conjunction with AntUnit and the Eclipse Ant Runner dispatch to allow us to test and cover interactions. AntUnit allows us to do wider coverage of the dispatch. And the rest has to be unit tested.
Using the Eclipse infrastructure frees us from dependency hell. The tasks are Eclipse features. You install them by director call on the shell into the builder, then you run your model-driven build. Or you use the tasks in your IDE. Works the same way. Most of those builders are pre-packaged in containers though.
My devs were initially very sceptical of this design. But it works far better then expected.
All the best from Brisbane, JG
[Updated on: Mon, 13 September 2021 05:35] Report message to a moderator
|
|
|
Powered by
FUDForum. Page generated in 0.02304 seconds