2010-11-02 19 views
6

J'ai récemment mis à jour de GWT 2.0.4 à 2.1.0. Depuis lors, je ne peux plus compiler mon application GWT. Lorsque je clique sur le bouton GWT compilation du plugin Eclipse GWT je reçois l'erreur suivante:GWT/Eclipse: ClassNotFoundException com/google/gwt/dev/Compilateur

java.lang.NoClassDefFoundError: com/google/gwt/dev/Compiler 
Caused by: java.lang.ClassNotFoundException: com.google.gwt.dev.Compiler 
at java.net.URLClassLoader$1.run(URLClassLoader.java:202) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:307) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:248) 
Exception in thread "main" 

Je ne peux pas créer un nouveau projet GWT dans Eclipse. Dans la nouvelle boîte de dialogue Nouveau projet d'application Web, vous pouvez choisir d'utiliser GWT et/ou Google App Engine. Lorsque cocher "Utiliser GWT" une boîte de dialogue d'erreur se lève qui dit: "La création de l'élément a échoué Raison: L'appel de com.google.gwt.user.tools.WebAppCreator a échoué.Voir le journal des erreurs pour plus de détails."

Dans le fichier journal (<workspace>/.metadata/.log) Je peux voir le message:

!ENTRY org.eclipse.jdt.ui 4 10001 2010-11-02 08:34:50.085 
!MESSAGE Internal Error 
!STACK 1 
Java Model Exception: Core Exception [code 0] Invocation of com.google.gwt.user.tools.WebAppCreator failed. See the error log for more details. 
at org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:50) 
at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:728) 
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975) 
at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:4777) 
at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:106) 
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121) 
Caused by: org.eclipse.core.runtime.CoreException: Invocation of com.google.gwt.user.tools.WebAppCreator failed. See the error log for more details. 
at com.google.gwt.eclipse.core.runtime.tools.WebAppProjectCreatorRunner.createProject(WebAppProjectCreatorRunner.java:53) 
at com.google.gdt.eclipse.suite.wizards.WebAppProjectCreator.createGWTProject(WebAppProjectCreator.java:532) 
at com.google.gdt.eclipse.suite.wizards.WebAppProjectCreator.create(WebAppProjectCreator.java:294) 
at com.google.gdt.eclipse.suite.wizards.NewWebAppProjectWizard.finishPage(NewWebAppProjectWizard.java:147) 
at org.eclipse.jdt.internal.ui.wizards.NewElementWizard$2.run(NewElementWizard.java:117) 
at org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:39) 
at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:728) 
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975) 
at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:4777) 
at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:106) 
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121) 
!SUBENTRY 1 com.google.gwt.eclipse.core 4 0 2010-11-02 08:34:50.085 
!MESSAGE Invocation of com.google.gwt.user.tools.WebAppCreator failed. See the error log for more details. 

GWT-dev.jar, GWT-user.jar et beaucoup d'autres pots-de-google sont dans le classpath ...

Est-ce que quelqu'un a une idée de comment résoudre ce problème? J'ai aussi mis en place une nouvelle nouvelle installation d'Eclipse, installé le nouveau plugin GWT, et a choisi un nouveau répertoire de l'espace de travail, mais cela me donne encore les erreurs ...

Informations complémentaires:

  • Windows XP,
  • Eclipse pour Java EE 3.6 Helios,
  • J2EE/Java 1.6.0_22-b04
  • Google Plugin for Eclipse 3.6 1.4.0.v201010280102,
  • Google App Engine SDK Java 1.3.8 1.3.8.v201010161055
  • Google Web Toolkit SDK 2.1.0 2.1.0.v201010280102

Répondre

3

J'ai eu le même problème de ne pas pouvoir créer un nouveau projet GWT dans Eclipse. Suppression de la variable Classpath à partir de mes variables d'environnement Windows (interférant apparemment avec les paramètres dans Eclipse) a résolu le problème pour moi.

+0

Merci! dans un autre problème: [ERREUR] Impossible de trouver 'GWTModule/gwt/xml.gwt.xml' sur votre chemin de classe, pourrait être une faute de frappe, ou peut-être avez-vous oublié d'inclure une entrée de chemin de classe pour la source? quand je jouais avec différentes versions de GWT. – hage

0

Allez à votre Project Properties/Build Path aller là-bas le "GWT library" en haut de la Buildpath.

Essayez maintenant de recompiler à nouveau.

+0

Malheureusement, cela n'a pas aidé. Mon ordre de classpath est maintenant: GWT SDK, jdk, glassfish libs, beaucoup d'autres jars, mon répertoire de projet Mais je reçois toujours le NoClassDefFoundError et je ne peux pas créer un nouveau projet GWT. Je vais maintenant essayer de mettre en place un tout nouvel environnement dans une machine virtuelle ... – hage

+0

La mise à niveau vers la version 2.1 est un peu douloureuse. J'ai eu des problèmes dans mes 2 ordinateurs. Déplacer le GWT dans le buildpath a aidé dans les deux systèmes, mais dans un, j'ai également dû effacer tous les fichiers mis en cache. Dans mon OSX j'ai même besoin de redémarrer complètement l'ordinateur (pour une raison étrange) –

1

Dans mon cas, le fichier jar (gwt-dev-2.1.0.jar) téléchargé à partir du repo de google maven était corrompu! Je remplace le pot dans mon repo avec un contenant les classes et mvn gwt: run travaillé!

espérons que cela aide.

+0

Je n'utilise pas maven. J'ai installé le gwt plungin direclty depuis le site de mise à jour de gwt ... j'ai essayé de réinstaller le plugin, de remplacer le plugin gwt-sdk par celui téléchargé de la page google mais tout n'a pas aidé. :( – hage

+1

J'ai rencontré exactement le même problème, mon fichier JAR contenait du HTML, ce qui a corrigé le problème à un moment donné, quelqu'un a dû se tromper avec le dépôt que nous utilisions/utilisions – Ztyx

1

Je faisais face à un problème similaire où je recevais constamment java.lang.NoClassDefFoundError: com/google/gwt/dev/Compiler. Lors de mes recherches, je me suis rendu compte que la version gwt manquait un fichier à l'intérieur du dossier gwt-dev dans le répertoire d'installation de gwt. En fait, j'utilise maven et gwt 2.5.0 pour mon projet, et j'ai découvert que le dossier .m2 \ repository \ com \ google \ gwt \ gwt-dev \ 2.5.0 devrait exister quatre fichiers pour gwt compilateur pour fonctionner. Ce sont

  • gwt-dev-2.5.0.jar < -Parfois c'est corrompu
  • GWT-dev-2.5.0.jar.sha1 < - celui-ci était absent
  • GWT-dev-2.5.0.pom
  • GWT-dev-2.5.0. pom.sha1
0

Je viens de supprimer et d'inclure à nouveau gwt-dev.jar et de commencer à travailler.

0

-je résoudre ce problème à faire cela:

  • supprimer lib GWT de votre projet
  • plugins mise à jour de GWT pour Eclipse
  • mis la lib retour dans votre projet
  • Fait
0

J'ai eu le même problème, un programme java avait été installé en déclarant une variable d'environnement "ClassPath", et invalider le gwt plu gin pour n'importe quelle version d'eclipse, de 3.6 (hélios) à 4.2 (juno). Notez que les variables d'environnement sont insensibles à la casse dans les systèmes d'exploitation Windows. Solution: éliminer la déclaration de variable système/utilisateur et déclarer la variable dans un/le script de lancement pour le programme concerné.

0

Ma compréhension est:

Lorsque GWT compile un projet, il a besoin de l'outil "com.google.gwt.dev.Compiler" (qui a un point d'entrée "principale"); Toutefois, GWT n'utilise pas le paramètre "build path" du projet Eclipse pour trouver l'outil, mais plutôt la variable système "classpath" d'OS. Donc, je pense que la solution est d'ajouter "D: \ Java \ GWT \ gwt-2.6.1 \ *;" (mon exemple) dans "classpath" et redémarrez Eclipse. Cela fonctionne bien pour moi depuis.