问题
I've working in a rich client with an Griffon 0.3.1 enviroment during the last couple of months.
That version is getting old and now I'm required to upgrade the project into a 0.9.3.
After doing:
griffon upgrade
And getting the latest releases of the required plugins I'm facing the following error:
Compilation error: BUG! exception in phase 'canonicalization' in source unit 'C:\maestro\desarrollo\projects\interactionManager\sgmentia-client\griffon-app\controllers\com\nortia\sgmentia\client\campaign\CampaignController.groovy' ClassNode#getTypeClass for com.nortia.sgmentia.business.Seleccion is called before the type class is set
There were no compilation errors before the upgrading after trying several things I haven't got a clue.
Thanks in advance.
Ivan.
回答1:
Try upgrading to 0.9.4. There were some corner cases in previous versions due to the introduction of AST injection behavior. Also, don't forget to invoke the clean command right after upgrade.
回答2:
After some research, I write my own conclusions in order to help anyone with the same problem.
- There is a big leap between Griffon 0.3.x and Griffon 0.9.x, some Apis have changed dramatically and AST Injection has been introduced.
- The following links MUST be read in order to understand what's going on:
http://griffon.codehaus.org/Griffon+0.9.2-rc1?print=1
http://dist.codehaus.org/griffon/guide/guide/9.%20Threading.html#9.3%20Annotation%20Based%20Threading
- If upgrading the straight way has not worked for you, try first disabling Threading injection:
griffon.disable.threading.injection=true
- Finally, once you get your code compiled you can try to clean your controllers step by step.
Hope it helps.
来源:https://stackoverflow.com/questions/8311492/compilation-error-bug-exception-after-griffon-project-upgrade