2010-11-02 16 views
6

ho aggiornato di recente da GWT 2.0.4 a 2.1.0. Da allora non posso più compilare la mia applicazione GWT.GWT/Eclipse: ClassNotFoundException com/google/gwt/dev/Compiler

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" 

Inoltre non riesco a creare un nuovo progetto GWT in Eclipse: Quando clicco sul pulsante di GWT del Plug-in Eclipse GWT ottengo il seguente errore di compilazione. Nella nuova finestra di dialogo Nuovo progetto di applicazione Web è possibile scegliere di utilizzare GWT e/o Google App Engine. Quando si seleziona "Usa GWT" viene visualizzata una finestra di dialogo di errore che dice: "Creazione dell'elemento non riuscita Motivo: chiamata di com.google.gwt.user.tools.WebAppCreator non riuscita. Vedere il registro degli errori per ulteriori dettagli."

Nel file di registro (<workspace>/.metadata/.log) posso vedere il messaggio:

!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 e molti altri google-vasi sono nel classpath ...

Qualcuno ha un'idea di come risolvere questo problema? Ho anche creato una nuova installazione di Eclipse fresco, installato il nuovo plugin GWT, e ha scelto una nuova directory di lavoro, ma questo mi dà ancora gli errori ...

Ulteriori informazioni:

  • Windows XP,
  • Eclipse per Java EE 3.6 Helios,
  • J2EE/Java 1.6.0_22-b04
  • Google Plugin per 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

risposta

3

Ho avuto lo stesso problema di non riuscire a creare un nuovo progetto GWT in Eclipse. Rimuovere la variabile Classpath dalle variabili di ambiente di Windows (interferendo in modo apparente con le impostazioni in Eclipse) ha risolto il problema per me.

+0

Grazie! in un altro problema: [ERRORE] Impossibile trovare "GWTModule/gwt/xml.gwt.xml" sul classpath, potrebbe essere un errore di battitura o forse hai dimenticato di includere una voce classpath per l'origine? Sembra che qualcuno sia incasinato quando stavo giocando con diverse versioni GWT. – hage

0

Vai al tuo Project Properties/Build Path lì spostare il "GWT library" alla parte superiore della BuildPath.

Ora prova a ricompilare nuovamente.

+0

Purtroppo questo non ha aiutato. Il mio ordine di classpath ora è: GWT SDK, jdk, glassfish libs, molti altri vasi, la mia directory di progetto Ma ottengo ancora il NoClassDefFoundError e non riesco a creare un nuovo progetto GWT. Ora cercherò di creare un ambiente completamente nuovo in una VM ... – hage

+0

L'aggiornamento a 2.1 è un po 'doloroso. Ho avuto problemi con i miei 2 computer. Spostare il GWT nel buildpath ha aiutato in entrambi i sistemi, ma in uno ho anche bisogno di cancellare tutti i file memorizzati nella cache. Nel mio OSX avevo anche bisogno di riavviare completamente il computer (per qualche strana ragione) –

1

Nel mio caso il jar (gwt-dev-2.1.0.jar) scaricato dal repository di Google Maven era corrotto! Sostituisco il jar nel mio repository con uno contenente le classi e mvn gwt: run worked!

spero che questo aiuti.

+0

Non uso Maven. Ho installato il gwt plungin direttamente dal sito di aggiornamento di gwt ... ho provato a reinstallare il plugin, sostituire il plugin gwt-sdk con uno scaricato dalla pagina di google, ma tutto non ha aiutato. :( – hage

+1

Ho sperimentato lo stesso identico problema: il mio JAR conteneva HTML, il caricamento di redown ha corretto questo problema A un certo punto qualcuno doveva aver incasinato qualcosa con il repository che stavamo usando – Ztyx

1

Ero di fronte a un problema simile in cui mi trovavo costantemente java.lang.NoClassDefFoundError: com/google/gwt/dev/Compilatore. Durante la ricerca ho capito che nella versione gwt mancava un file all'interno della cartella gwt-dev all'interno della directory di installazione di gwt.

In realtà, sto usando maven e gwt 2.5.0 per il mio progetto, e ho scoperto che all'interno della cartella .m2 \ repository \ com \ google \ gwt \ gwt-dev \ 2.5.0 dovrebbero esistere quattro file in compilatore gwt per funzionare. Questi sono

  • gwt-dev-2.5.0.jar < -A volte questo è danneggiato
  • GWT-dev-2.5.0.jar.sha1 < - questo mancava
  • GWT-dev-2.5.0.pom
  • GWT-dev-2.5.0. pom.sha1
0

Solo, rimuovere e includere nuovamente gwt-dev.jar e iniziare a lavorare.

0

ho risolvere questo problema facendo questo:

  • rimuovere GWT lib dal progetto
  • plugin aggiornamento GWT per Eclipse
  • mettere il lib indietro nel progetto
  • Fatto
0

Ho avuto lo stesso problema, alcuni programmi Java sono stati installati dichiarando una variabile di ambiente "ClassPath" e invalidando il gwt plu gin per QUALSIASI versione di eclipse, da 3.6 (helios) a 4.2 (juno). Si noti che le variabili di ambiente non fanno distinzione tra maiuscole e minuscole nei sistemi operativi Windows. Soluzione: eliminare la dichiarazione della variabile utente/sistema e dichiarare la variabile in uno/script di avvio per il programma in questione.

0

mia comprensione è:

Quando GWT compila un progetto, ha bisogno della funzione "com.google.gwt.dev.Compiler" (che ha un punto di ingresso "principale"); tuttavia, GWT non usa l'impostazione "build path" del progetto Eclipse per trovare lo strumento, invece, guarda alla variabile di sistema "classpath" del sistema operativo.

Quindi, penso che la soluzione sia aggiungere "D: \ Java \ GWT \ gwt-2.6.1 \ *;" (il mio caso come esempio) in "classpath" e riavviare Eclipse. Funziona bene per me da allora.

Problemi correlati