Je cherche à écrire un plugin SBT pour PlayFramework 2.1 qui précompilerait les modèles handlebars situés dans app/assets/templates. Je partagerai bien sûr ce plugin une fois qu'il sera terminé. J'ai trouvé ce tutoriel http://eng.netwallet.com/2012/04/25/emberhandlebars-template-precompilation-with-play/ qui était un peu obsolète, mais ce n'était pas un problème de l'adapter pour Play! 2.1.
Ensuite, j'ai essayé de compiler un fichier de modèle simple, mais SBT a échoué avec le message suivant:
ember: traitement du modèle test
[error] /.../templates/test.handlebars: Erreur de compilation[exception inattendue pendant la compilation Ember (fichier=/.../templates/test.handlebars, options=List(), ember=ember-1.0.0-pre.4.js): org.mozilla.javascript.EvaluatorException: nom manquant après l'opérateur . (ember-1.0.0-pre.4.js#3309)]
[error] (MyProject/*:play-copy-assets) @6dap83075: Erreur de compilation dans /.../templates/test.handlebars:null
[error] (MyProject/compile:resources) @6dap83075: Erreur de compilation dans /.../templates/test.handlebars:null
ember-1.0.0-pre.4.js à la ligne 3309 a un mot-clé volatile, qui est apparemment réservé dans Rhino.
Je suis loin d'être un expert en Rhino, c'est pourquoi je me demande si quelqu'un connaît une solution pour contourner cela? Je ne recherche pas une solution parfaite pour l'instant. Toute solution (même des hacks rapides et sales comme l'utilisation d'un ember.js personnalisé) qui a une chance raisonnable de fonctionner pour la plupart des modèles handlebars simples fonctionnerait et nous nous préoccuperions de la peaufiner une fois que la fonctionnalité sera là et que le plugin SBT sera disponible.
Merci d'avance!