2010-05-24 7 views
26

J'utilise Eclipse Galileo avec la dernière version de GWT 2.0 en mode développement, mais il fonctionne très lentement (je dois attendre environ une minute pour ouvrir une page, mais après la compilation, mon application fonctionne très bien quand je l'utilise avec Tomcat 5.5).GWT est lent en mode de développement

Mon code n'est pas trop lourd et je suppose qu'il y a un problème d'OS ou de logiciel, parce que j'avais ce problème auparavant, mais quand j'ai réinstallé Windows Vista SP2 (j'ai formaté mon disque Windows et l'ai réinstallé), mon problème a été résolu pendant quelques jours et puis c'est devenu trop lent.

Je n'ai pas installé de logiciel spécial sur mon ordinateur Windows, donc je ne sais vraiment pas pourquoi ce problème se produit. Toute suggestion ?

+0

Quel navigateur utilisez-vous? Utilisez-vous la même chose lorsque vous accédez au mode dev et quand l'application est déployée dans Tomcat? – ramirogm

+0

il n'y a pas besoin de crier> _> –

+0

vous devriez marquer une réponse comme acceptée. –

Répondre

3

La première fois que vous chargez la page, elle charge tous les javacodes nécessaires (et la JVM). Plus tard, chaque rafraichissement de la page ne chargera que le javacode modifié puis exécutera le tout (je me trompe peut-être). Donc, si vous fermez le navigateur puis rouvrez votre page chaque fois que vous voulez voir les changements que vous avez faits, oui, ça va être lent. Si vous actualisez la page à chaque fois, il DEVRAIT être rapide (si les changements que vous avez faits n'étaient pas énormes).

Eclipse + GWT 2.0 n'est pas la raison pour laquelle il est lent ... (par la voie Shubhkarman, si je ne me trompe pas il n'y a pas le plugin GWT pour NetBeans ...)

+0

Non, la fermeture du navigateur ne peut pas m'aider, je pense que ce problème est un peu plus compliqué que la fermeture et la réouverture ou l'actualisation du navigateur !!! Je ai essayé avec firefox, chrome et IE, tous ont le même problème! –

+0

et bien sûr je suis d'accord avec vous, Eclipse + GWT 2.0 n'est pas la raison pour laquelle c'est lent !!! et aussi il n'y a pas de plugin pour les haricots nets. –

+0

Non, vous ne devez pas * fermer * le navigateur. Comme Zwik l'a dit, après le chargement initial (qui pourrait prendre une minute et rendre le navigateur inerte), tous les rafraîchissements suivants devraient être très rapides. Si * ce n'est * pas le cas, nous pouvons étudier plus avant. –

1

J'ai trouvé que le différence de performance entre l'exécution du mode hébergé GWT dans le débogage et le non-débogage pour être grand. Si vous utilisez debug, essayez de courir sans pour voir si cela aide.

Le chargement initial de la page peut être lent, mais une fois que vous y êtes allumé, il suffit de cliquer sur Actualiser dans mon navigateur pour recharger le projet mis à jour en quelques secondes.

+0

Oui, c'est vrai, lorsque je parcours mon projet en mode exécution au lieu du mode débogage, sa vitesse est correcte. mais quel est le problème? Je dois l'exécuter plus rapidement en mode débogage, car avec une telle vitesse il faut 100 ans pour déboguer une application !!! Une idée?! –

+0

Je ne sais pas si, sauf essayer de minimiser le temps que vous utilisez le mode de débogage. Je trouve que la plupart du temps, je peux comprendre mon problème sans utiliser le mode de débogage. – user27478

+1

Mai parfois je peux comprendre mon problème sans utiliser le mode débogage, mais il existe de nombreuses situations que je dois utiliser le mode débogage (par exemple, vous ne pouvez pas spécifier de point d'arrêt ou voir les valeurs variables en mode de fonctionnement). donc, ce n'est pas la solution, c'est juste le nettoyage de la question! –

4

Si vous utilisez smartgwt, assurez-vous que firebug ou similaire est désactivé. Cela va vraiment ralentir votre navigateur en mode dev.

Et en ce qui concerne NetBeans, il y a vraiment un plugin pour GWT appelé GWT4NB. Mais l'IDE n'est pas votre problème :)

+0

J'ai déjà vérifié pour firebug et qui est désactivé. Je pense aussi que l'IDE n'est pas la raison de ce problème, mais qu'est-ce qui en est la cause ??? C'est un mystère ! –

3

Supprimer le cache gwt à partir de dossiers temporaires comme des images. fichiers rpc..etc. que de voir la performance. c'est l'une des raisons de ralentir en mode hébergé.

+3

Où sont ces dossiers et fichiers temporaires GWT ?? –

36

Si la procédure est devenue inhabituellement lente, mais qu'elle était plus rapide auparavant et que vous effectuez le débogage, cela peut être dû au fait que vous avez défini un point d'arrêt sur une entrée de méthode. Cela peut rendre les choses extrêmement lentes, même si le point d'arrêt n'est pas atteint. Essayez d'effacer vos points d'arrêt.

+3

Ceci est une bonne astuce générale lors du débogage, même avec du vieux code Java – Guillaume

+1

J'ai eu ce problème avec un point d'arrêt dans une méthode "processCall" de Filter and Servlet. M'a sauvé un temps fou (2min au lieu de 5s pour le lancement de l'application), mais pourquoi se comporte comme ça? –

+0

J'avais environ 20 points de rupture dans mon code GWT. L'exécution en mode débogage dans Eclipse était TRÈS TRÈS lente. J'ai enlevé le point d'arrêt et il peut revenir comme avant: très RAPIDE! –

1

J'ai eu le même type de problème et j'ai constaté que cela se produisait en raison du nombre de points de rupture. Après avoir réduit le nombre de points de rupture, les performances se sont améliorées.

0

Même j'ai eu le même problème avec GWT. J'ai commencé à tester avec Firefox maintenant. La première fois que j'ai lancé le débogage sur Firefox, c'était lent.

Je définissez le niveau de journal à 'info' dans le runconfig> onglet GWT

Alors, je restrated mon espace de travail et Firefox. Puis 'debug> myGWTapplication'

Lorsque vous ouvrez votre application en mode débogage, attendez que le plugin du navigateur se connecte maintenant.

Cette fois, il n'écrit pas toutes les lignes de journal dans le mode de développement, et il est plus rapide.

Je pense que le firefox et la journalisation ont fait la différence. Maintenant, je ne vois pas beaucoup de décalage.

De même que mentionné dans les commentaires ci-dessus, supprimez les points de débogage, j'ai tout supprimé, et utilisez ensuite si nécessaire. Edit: essayé sur l'IE8 - c'est un événement rapide là-bas.

Questions connexes