2011-10-19 5 views
0

Est-il possible d'utiliser le Guava libraries sur un projet réalisé avec GWT et Google App Engine?Projet avec Guava, GWT et AppEngine

Je vois que l'individu jars (le standard Java un et le compatible GWT) a la même hiérarchie de nommage de paquet. Comment cela s'intègre-t-il dans un projet GWT + AppEngine?

Répondre

2

Oui, c'est possible. Quelques classes de goyave ne seront pas utilisables sur AppEngine en raison du bac à sable restreint dans lequel votre application va s'exécuter, en particulier celles du paquetage .io comme les fichiers (vous pourrez lire des choses sans les écrire).

Êtes-vous inquiet à propos du déploiement des deux fichiers jar et d'un conflit? Si c'est le cas, je pense que ça ira - quand vous compilez votre application GWT, elle devient javascript, donc vous ne déploieriez pas forcément le pot compatible GWT, juste le normal.

+0

merci pour votre contribution. Donc, si je laisse tomber le "gwt" dans mon projet Eclipse, je serai bon pour GWT et AppEngine? – jldupont

+1

Je le crois. Il peut y avoir une petite quantité de classes qui vous manquent en faisant cela cependant - en supposant qu'il existe des classes qui fonctionnent toutes deux dans le moteur de l'application mais ne sont pas compatibles avec gwt. Si vous regardez le javadoc pour les bibliothèques de goyave, vous pouvez voir que beaucoup (la plupart?) D'entre eux sont annotés avec @ gwt-compatible. Par exemple, voir http://docs.guava-libraries.googlecode.com/git-history/v10.0.1/javadoc/com/google/common/collect/Ranges.html –

2

Il n'y aura pas de conflit car le gwt sera utilisé par le vrai client DevMode et le compilateur GWT, le compilateur "normal" vivra dans votre WEB-INF/lib et sera chargé (dans DevMode) dans un classloader différent. Cela dépend donc entièrement de la configuration de votre projet et de votre build. Cela étant dit, je n'ai jamais essayé dans le même projet Eclipse. J'utilise toujours des projets client et serveur distincts, et -noserver dans DevMode.

Questions connexes