Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » M2T (model-to-text transformation) » [Acceleo] Metamodel resolving and URI
icon4.gif  [Acceleo] Metamodel resolving and URI [message #891682] Mon, 25 June 2012 13:38 Go to next message
Michaël Melchiore is currently offline Michaël Melchiore
Messages: 39
Registered: April 2012
Member
Hi folks,

In my workspace, I have defined several metamodels which may inherit from each other. Finally, other plugins are acceleo generators that use these metamodels.

Upon Eclipse start-up, Acceleo seems to fail at walking through the metamodel inheritance tree. Previously valid Acceleo scripts, spread in different plugins, are now filled with errors. Trying to launch generation anyway results in exceptions about unresolved URI.

My current workaround is to deactivate automatic building and clean the workspace. Then, I randomly delete and regenerate code from metamodels, edit and save offending Acceleo scripts while rebuilding and cleaning the workspace. At some point, Acceleo becomes happy. The process is random, it can take 5 to 20 mins bedore I can start working...

This is very annonying since I cannot restart Eclipse without repeating the whole process. I have double checked that all my Acceleo generators use XMI serialization.

First, Java code is generated from metamodels in dedicated plugins to ease version management. Should Acceleo plugins depend on the metamodel plugin or the Java code generated plugin ?

What kind of compilation path should I set in the Acceleo generator properties window ? (Currently, I use "Absolute file system paths")

Finally, I have found that different genmodel files can use different URI scheme to reference the same metamodel : workspace relative "../../blabla" or platform "platform:/plugin/" Could this explain my problems ?

Regards,

Michaël


NOTE: I am using Eclipse 3.6.2 with EMF 2.6.1 and Acceleo 3.2.1 (20120511)
Re: [Acceleo] Metamodel resolving and URI [message #891686 is a reply to message #891682] Mon, 25 June 2012 13:45 Go to previous messageGo to next message
Ed Willink is currently offline Ed Willink
Messages: 4087
Registered: July 2009
Senior Member
Hi

I strongly recommend Acceleo 3.3 post M6. (I found 3.2 unuseable for my
meta-models.)

Regards

Ed Willink

On 25/06/2012 14:38, Michaël Melchiore wrote:
> Hi folks,
>
> In my workspace, I have defined several metamodels which may inherit
> from each other. Finally, other plugins are acceleo generators that
> use these metamodels.
>
> Upon Eclipse start-up, Acceleo seems to fail at walking through the
> metamodel inheritance tree. Previously valid Acceleo scripts, spread
> in different plugins, are now filled with errors. Trying to launch
> generation anyway results in exceptions about unresolved URI.
>
> My current workaround is to deactivate automatic building and clean
> the workspace. Then, I randomly delete and regenerate code from
> metamodels, edit and save offending Acceleo scripts while rebuilding
> and cleaning the workspace. At some point, Acceleo becomes happy. The
> process is random, it can take 5 to 20 mins bedore I can start working...
>
> This is very annonying since I cannot restart Eclipse without
> repeating the whole process. I have double checked that all my Acceleo
> generators use XMI serialization.
>
> First, Java code is generated from metamodels in dedicated plugins to
> ease version management. Should Acceleo plugins depend on the
> metamodel plugin or the Java code generated plugin ?
>
> What kind of compilation path should I set in the Acceleo generator
> properties window ? (Currently, I use "Absolute file system paths")
>
> Finally, I have found that different genmodel files can use different
> URI scheme to reference the same metamodel : workspace relative
> "../../blabla" or platform "platform:/plugin/" Could this explain my
> problems ?
>
> Regards,
>
> Michaël
>
>
> NOTE: I am using Eclipse 3.6.2 with EMF 2.6.1 and Acceleo 3.2.1
> (20120511)
Re: [Acceleo] Metamodel resolving and URI [message #892202 is a reply to message #891686] Wed, 27 June 2012 11:55 Go to previous message
Michaël Melchiore is currently offline Michaël Melchiore
Messages: 39
Registered: April 2012
Member
Thanks for your input.

I have upgraded to Acceleo 3.3.0.v20120529-1042, but still have the problem. It does seem to occur less often though (not at every Eclipse restart)

Edit:
In the emtl files, the root metamodel is correctly referenced through its Ns URI. However, I witness a strange behavior in the Acceleo editor: when I try to jump to the declaration of a class whose metamodel imports the unfound root metamodel, a FileNotFoundException is thrown. In the exception message, the unfound root metamodel is referenced through a workspace relative path.

[Updated on: Wed, 27 June 2012 12:21]

Report message to a moderator

Previous Topic:[JET]
Next Topic:[XPand] How does mwe workflow engine find custom components?
Goto Forum:
  


Current Time: Tue Oct 21 12:23:36 GMT 2014

Powered by FUDForum. Page generated in 0.03059 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software