Problem mit der Maven GWT-Anwendung in Eclipse

9

Ich versuche, ein GWT-Projekt durch WebAppCreator aktiviert Maven2 zu erstellen.

Projekterstellungsschritte:

  1. Projekt mit WebAppCreator erstellen (ich verwende gwt-2.3.0)
      

    webAppCreator -noant -maven -XnoEclipse -aus MyApp com.example.MyApp

  2.   
  3. Projekt als vorhandenes Maven-Projekt in Eclipse (Helios) importieren
  4.   
  5. Aktiviere "Projekt" - & gt; "Eigenschaften" - & gt; "Google" - & gt; "Google Web Toolkit" - & gt; "Verwenden Sie Google Web Toolkit" Kontrollkästchen
  6.   
  7. In den Projekteigenschaften "Google" festlegen - & gt; "Webanwendung" - & gt; "Dieses Projekt hat ein WAR-Verzeichnis". Setzen Sie den WAR-Verzeichnispfad "src / main / webapp" und deaktivieren Sie "Start und Bereitstellung von diesem Verzeichnis"
  8.   
  9. Der Java-Buildpfad lautet "MyApp / target / www / WEB-INF / classes"
  10.   
  11. Ich habe die Einstellungen in pom.xml nicht geändert
  12.   
  13. Kompiliere das Projekt mit dem gwt eclipse-Plugin (Version 2.3.0). Es wurde erfolgreich kompiliert.
  14.   
  15. Versuchen Sie, das Projekt als Webanwendung auszuführen. Wenn ich eine Anwendung starte, fragt mich das GWT-Plugin nicht nach dem WAR-Ordner.   Ich tat das alles, ich sah in den Logs:
  16.   

[WARN] Die Server-Klasse 'com.example.server.GreetingServiceImpl' wurde in der Web-App nicht gefunden, wurde aber im Systemklassenpfad gefunden

[WARN] Hinzufügen des Klassenpfadeintrags 'file: / home / redfox / workspace / java / redfox / MeineApp / target / www / WEB-INF / classes /' zum Klassenpfad der Webanwendung für diese Sitzung

[WARN] Die Server-Klasse 'com.google.gwt.user.client.rpc.RemoteService' wurde in der Web-App nicht gefunden, wurde aber im System-Klassenpfad gefunden

[WARN] Hinzufügen des Klassenpfadeintrags 'file: /home/redfox/.m2/repository/com/google/gwt/gwt-servlet/2.3.0/gwt-servlet-2.3.0.jar' zur Web-App Klassenpfad für diese Sitzung

Und wenn ich versuche, die Seite von der URL zu laden (http://127.0.0.1:8888/MyApp.html?gwt.codesvr=127.0.0.1:9997), sehe ich 404 Fehler. In Protokollen sehe ich keine Fehler. Wie kann ich diese Standardanwendung ausführen? Auch ich habe eine andere Frage: Wenn dieses Problem gelöst wird, wie kann ich diese Anwendung im Web-Modus (nicht im Entwicklungsmodus) für die Verwendung von Links wie "http://127.0.0.1:8888" ohne param gwt.codesvr?

P.S. Sorry für mein schlechtes Englisch.

    
Alex Druzhilov 11.05.2011, 16:56
quelle

4 Antworten

0

Ich verstehe Ihre Frustration, vertrauen Sie mir, ich habe kürzlich genau das gleiche Problem durchgemacht, das Sie jetzt haben.

Folgen Sie, wie Eugene gesagt hat, seinen Anweisungen, aber ...

Auf der Select an Archetype wähle die Version 2.3.0-1 (Andere funktionieren vielleicht, aber diese funktioniert für mich)

Generieren Sie Ihre Beispielanwendung mithilfe der Archtyp-Version. Mach einen mvn gwt: run, du wirst diesen Bildschirm sehen (Wenn alles gut geht) Klicken Sie auf "Standardbrowser starten".

Viel Glück. Prost PB

    
Babajide Prince 19.04.2012 12:10
quelle
0

Ich weiß, dass diese Frage zwei Jahre alt ist. Aber ich hatte gerade das gleiche Problem und jetzt herausgefunden, wie man es beheben kann.

Wenn Eclipse Sie beim ersten Start nicht nach Ihrem "WAR" -Verzeichnis fragt, können Sie es auch manuell einstellen:

In der Sonnenfinsternis gehen Sie auf "Ausführen" - & gt; "Debug Konfiguration ...". Wählen Sie Ihre "Web Application" - & gt; Wählen Sie den "Argumente" -Tab und fügen Sie den Parameter z. "-war C: \ IhrProjektpfad \ target \ YourProject-1.0-SNAPSHOT". Geben Sie hier den vollständigen Pfad an, der auf Ihr Ziel verweist und von maven generiert wird.

Hoffe, dass jemand dieses Problem schneller lösen kann:)

    
jan 22.05.2013 22:13
quelle
0

Ich weiß, das ist alt, aber hier ist meine neueste Herangehensweise (wie auch hier beantwortet)

Ich kann nicht für den webAppCreator sprechen, weil ich ihn nicht benutzt habe, aber ich hatte viel Glück beim Erstellen der Maven-Projekte in Eclipse mit dem gwt-maven-plugin von codehause.

Erstellen eines Maven GWT Project Directy in Eclipse

  1. Öffnen Sie den neuen Projektassistenten in Eclipse und filtern Sie nach Maven Project.

  2. Wählen Sie das Maven-Projekt und klicken Sie auf "Weiter".

  3. Geben Sie den gewünschten Projektort ein und klicken Sie auf "Weiter".

  4. Geben Sie "gwt-" in den Archetyp-Filter ein und wählen Sie das gwt-maven-plugin von Codehaus. Klicken Sie auf Weiter.

  5. Geben Sie Ihre Maven-Projektdetails und einen Modulwert ein und klicken Sie auf Fertig stellen.

Dies wird ein Maven - gwt Projekt für Sie in Eclipse erstellen. Dies wird mit einer Beispielanwendung geliefert, mit der Sie sicherstellen können, dass Sie die Anwendung korrekt starten können.

Ausführen der Anwendungsbefehlszeile

  1. Öffnen Sie die Befehlszeile.
  2. Navigieren Sie zu Ihrem Projekt nach Hause.
  3. Führen Sie den Befehl "mvn clean package" aus.
  4. Führen Sie den Befehl "mvn gwt: run"
  5. aus

Dies sollte Sie zum Laufen bringen. Wenn Sie das 2.7.0 gwt-maven-plugin verwendet haben, sollte dies die Anwendung standardmäßig im Super-Dev-Modus ausführen.

Führen Sie die Anwendung in Eclipse aus

  1. Navigieren Sie wie gewohnt zu Properties & gt; Google & gt; Web Application und markieren Sie "Dieses Projekt hat ein WAR-Verzeichnis". Das WAR-Verzeichnis, das dieses Plugin verwendet, sollte src / main / webapp sein.
  2. Navigieren Sie zu Eigenschaften & gt; Google & gt; Web Toolkit und überprüfen Sie "Dieses Projekt hat ein WAR-Verzeichnis. Sie können möglicherweise das Modul hier angeben. Ich bin tatsächlich nicht dazu in der Lage, es kann spezifisch für mein Google Plugin für Eclipse oder etwas Umgebungsspezifisches sein ...
  3. Ausführen als & gt; Webanwendung.
  4. Wenn Sie wie in Schritt 2 Probleme hatten, erhalten Sie einen Fehler Missing required argument 'module[s]' . Um dies zu beheben, öffnen Sie Ihre Ausführungskonfiguration (sollte automatisch erstellt worden sein) und fügen Sie auf der Registerkarte "Argumente" am Ende der Argumente den qualifizierten Paketnamen für Ihr Modul hinzu, z. com.mycompany.abc.GwtSampleModule. Fügen Sie das Präfix ".gwt.xml" nicht hinzu.
    1. Es lohnt sich auch, zu überprüfen, ob die HTML-Seite, auf die in Ihren Argumenten verwiesen wird, korrekt ist. Ich hatte auch Probleme damit.

Die Anwendung sollte jetzt für den Start in Eclipse mit dieser Ausführungskonfiguration konfiguriert werden. Meine überprüfte Umgebung ist:

  • Eclipse Luna (v4.4)
  • Google Plugin für Eclipse (v3.8)
  • GWT Maven Plugin (v2.7.0)
quelle
-2

Was ich vorschlage, kann etwas anders beginnen, als Sie bevorzugen, aber mit besseren Ergebnissen:)

  1. Installieren Sie das m2eclipse -Plugin . Dies wird Ihrer Umgebung eine Menge schöner Maven-Features hinzufügen.
  2. Mit dem neuen Projektassistenten erstellen Sie ein neues Maven-Projekt
  3. Aktivieren Sie nicht das Kontrollkästchen "Einfaches Projekt", sondern verwenden Sie einen der Archetypen von GWT (ich schlage gwt-maven-plugin vor)

Dann wird von maven die passende Projektstruktur mit allen erforderlichen Abhängigkeiten für Sie erstellt. Weitere Informationen über das GWT-Plugin finden Sie unter Ссылка , einschließlich zur Ausführung es.

P.S. Dein Englisch ist in Ordnung:)

    
Eugene Ryzhikov 12.05.2011 01:37
quelle