-
Acceleo M2T et Eclipse 3.5
Comme vous le savez Eclipse 3.5 Galileo est sorti le 24 Juin.
Une des nouveautés est l’intégration d’Acceleo M2T directement dans la version “Eclipse Modeling Tools”.
Je n’ai pas passé beaucoup de temps à l’essayer, mais on peut déjà noter plusieurs grosses améliorations. Bien sur la plus importante est le changement de langage de script. On passe d’un format spécifique Acceleo à du MTL standard défini par l’OMG pour les transformations Model to Text.Je vais plus me focaliser sur les nouveautés au niveaux outillage.
Installation facile
Avant je n’avais jamais réussit à installer Acceleo sur mon Eclipse via leur update site. Il y avait toujours des problèmes avec les versions d’emf, uml2… J’ai perdu beaucoup de temps et le seul moyen de le faire fonctionner rapidement était de récupérer leur package Eclipse+Acceleo.
Cette fois j’ai installé un Eclipse 3.5 vierge et via l’update site de Galileo je peux installer Acceleo 0.8. Au moment de l’installation il m’a installé toutes les dépendances nécessaires (emf…) En 5 minutes ça marche. Seul petit hic, il ne tire pas les dépendances vers le plugin uml2 et l’exemple ne fonctionne pas sans. Mais si vous avez téléchargé la version “Eclipse Modeling Tools” tout fonctionne sans passer par l’update.
Exécution en standAlone
Même si cette fonctionnalité existe depuis la version 2.4.0 d’Acceleo, on note maintenant la disparition complète des chaines de lancement Acceleo. Pour générer notre code on peut donc utiliser au choix :
- Du Java
- Une tache ant
- Un runner Eclipse
Il ne manque plus qu’un plug-in Maven 2, mais vu que l’équipe d’acceleo utilise plus ivy que Maven il faudra peut être le réaliser nous-même.
Debug
Je gardais le meilleur pour la fin, il est enfin possible de mettre des points d’arrêt dans nos templates. Ca marche très bien et on peut facilement naviguer dans notre model comme on le fait avec des objets en debug Java.
C’était le gros manque au niveau outillage d’Acceleo, c’est maintenant très bien fait.Une grosse évolution très intéressante d’Acceleo donc. Je suis même étonné qu’il n’y ait pas plus d’infos à ce propos sur leur site Web. Ils sont trop occupés à préparer l’Acceleo Day du 10 Juillet peut être
Journée annoncée sur la page d’acceuil d’Eclipse, la classe ! -
Conflit de lib Apache CXF et hibernate
Je viens de perdre pas mal de temps à faire fonctionner mon projet qui utilise hibernate et apache CXF pour exposer des WebServices.
Au moment de compiler j’avais l’erreur suivante :
WARN: Nested in org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor:
at net.sf.cglib.core.KeyFactory$Generator.generateClassAu début ça me paraissait être un simple NoClassDefFound, mais la classe recherchée était bien dans mon CLASSPATH.
A force de chercher j’ai fini par comprendre que c’etait un problème d’incompatibilité de version de lib cglib. Il faut donc exclure la librairie cglib récupérée avec hibernate pour en prendre une nommée : cglib-nodep.
Voici comment faire dans votre fichier maven 2 :
org.hibernate hibernate 3.2.1.ga cglib cglib cglib cglib-nodep 2.1_3 -
RMLL à Nantes
Mais c’est quoi au fait les RMLL ? C’est aussi la première question que je me suis posée
Et bien ce sont les Rencontres Mondiales du Logiciel Libre et cette année elles sont organisées à Nantes du 7 au 11 juillet 2009. 5 jours bien chargés découpés en 18 thèmes différents !
Amis du grand Ouest, c’est trop proche pour le louper !
Toutes les informations sur : http://2009.rmll.info



