2009-04-15 9 views
7

Hat jemand eine App von GWT 1.5 auf GWT 1.6 aktualisiert? Ich würde gerne hören, ob du eine Strategie hättest, die dir gefallen hat oder ob du überhaupt eine Strategie benötigt hast.GWT Upgrade von 1.5 auf 1.6

Offensichtlich kann ich das Upgrade-Dokument lesen. Ich frage mich nur, ob jemand das Upgrade gemacht hat und irgendwelche Probleme hat.

Antwort

5

Ich ging weiter und begann die Umwandlung. Ich bin noch nicht fertig, aber für den Fall, dass jemand anderes ein Upgrade von 1.5 auf 1.6 in Betracht zieht, werde ich die Frage mit dem, was ich bisher gesehen habe, beantworten.

  • Wenn Sie das cypal-Plugin für Eclipse verwenden, unterstützt es ab dieser Zeit GWT 1.6 nicht. Deinstallieren Sie es, indem Sie die Plugin-Jars entfernen und Eclipse neu starten. Installieren Sie das Google Eclipse-Plugin als Ersatz (aber sehen Sie die Probleme damit unten). Das Plugin erkennt Ihr vorhandenes Projekt nicht als GWT-Projekt. Ein einfacher Weg dies zu tun ist, das Plugin zu benutzen, um ein neues Projekt zu erstellen, und dann die Teile buildSpec und natures aus diesem Projekt in Ihr reales Projekt zu kopieren. Jetzt sollte das Plugin dein Projekt erkennen.
  • Die Upgrade-Anweisungen sagen, eine neue web.xml zu erstellen. Benutze stattdessen den bereits vorhandenen und kopiere ihn über. Es sind keine Änderungen erforderlich.
  • Fügen Sie das Google App Engine SDK und die GWT DSKs dem Projektbuildpfad
  • hinzu. GWTCompiler wurde in Compiler geändert. In den Upgrade-Dokumenten werden die Änderungen, die Sie hier vornehmen müssen, nicht besprochen, aber Sie müssen die Option -out mindestens durch -war ersetzen.
  • Für viele Leute (alle?), Der Compiler wird nicht funktionieren, und schlägt mit einem Stapelüberlauffehler fehl. Sie können das mit den Befehlszeilentools beheben, aber ich habe keine Möglichkeit gefunden, es mit dem Plugin zu beheben. Um dies über die Befehlszeile zu beheben, müssen Sie einen Stapelparameter hinzufügen, um die Größe des Stapels zu erhöhen. Ich baue mit Ameise, so habe ich die folgende Zeile in build.xml:

    < jvmarg value = "- Xss64M"/>

  • Wie erfahre ich mehr, ich diese aktualisieren werde.

    -Update 2009.05.03:

    Das Upgrade erfolgt. Nicht sicher, ich mag es so viel wie 1,5. Eclipse ist nicht vollständig auf das neue Dateilayout abgestimmt. Das heißt, das War-Verzeichnis wird jetzt nicht als Root für Webinhalte erkannt. Es gibt wahrscheinlich eine Einstellung dafür irgendwo.

    Zusätzliche Hinweise:

    • in Ihrem Code entfernen Verweise auf InetAddress (die in meiner App generiert GUIDs für die Anmeldung benutzt wurde). Dies kann daran liegen, dass mein GUID-Code nicht sicher in ein anderes Paket verschoben werden muss.
    • Copy appengine-web.xml in WEB-INF aus dem temporären Projekt in dem Krieg/WEB-INF
    • Die Eclipse-Plugin kompiliert Objekte mit einigem Mist überwintern, die eine jdoDetachedState Spalte, um all meinen Tabellen ergänzt. Yuck!
    • Für den letzten Artikel wird der Code nicht von der Ameisen-Build instrumentiert, so dass die Bereitstellung der Produktion nicht von diesem Fehler betroffen ist. Es ist nur der von Eclipse erzeugte Code, den ich explizit aus dem Produktionskrieg ausschließe.

      Das Folgende ist ein unentgeltlicher Stecker für die Website, wo diese eingesetzt wird, so kann es nicht lesen, wenn solche Dinge ärgern Sie: https://penwag.com/

      aktualisieren 5/9/2009

      • Meine E-Mail ITs funktionieren nicht mehr - das App Engine SDK stört.
      • Meine IDE (Eclipse) koexistiert nicht gut mit dem neuen Layout, daher erkennt sie nicht, dass WAR/WEB-INF/lib-Dateien automatisch in den Pfad eingefügt werden sollen.

      aktualisieren 6/2/2009

    +0

    Re: Ihr Kommentar zum Google Eclipse-Plugin, das JDO-optimierte Klassen generiert, na ja, diese wären für DataNucleus gedacht. Ich würde erwarten, dass Google eine Option zur Verfügung stellt, um Klassen nicht durch Bytecode zu verbessern, wenn sie woanders verwendet werden. Vielleicht ruft Google den Code "Mist" nicht dazu auf, sie zu motivieren, das zu erklären ;-) – DataNucleus

    +0

    Das könnte sein. Zweifel, dass sie wirklich so sensibel sind. Die meisten Programmierer kommen nicht durch eine Woche, ohne dass jemand etwas anruft, dass sie Mist geschrieben haben. ;) –

    +0

    Ich habe ein Ticket über die jdoDetachedState-Spalte erstellt und einen Workaround dort bereitgestellt: http://www.datanucleus.org/servlet/jira/browse/NUCENHANCER-73 – subes

    1

    Wir mit Cypal XSS- Option verwenden verwaltet: nach Preferenes, Cypal Studio, versuchen Sie mit Standard VM Option: -Xmx1024M -Xss1024k

    HTH Vincenzo Caselli http://www.rcp-vision.com

    +0

    Natürlich! Ah! Ich hätte daran denken sollen. Vielen Dank. –

    Verwandte Themen