Wie führe ich ein upgrade der Grails-version für eine bestehende Anwendung?
Habe ich ein Beispiel Grails Anwendung (von Grails in Action), die erstellt wurde vor einer Weile unter der version 1.1.1 auf einem anderen PC.
Ich bin jetzt be-Grails 1.2.0 und wollen noch einmal über die app. Jedoch wenn ich ihn starten will bekomme ich diese Meldung:
Anwendung erwartet wird, dass grails-version [1.1.1], aber GRAILS_HOME ist version [1.2.0] - verwenden Sie die richtige Grails-version oder laufen 'grails upgrade", wenn das Grails-version ist neuer als die version Ihrer Anwendung erwartet.
Nach der Lektüre ein wenig um, ich gelöscht aus dem Ordner 1.2.0 unter .grails in meinem home-Verzeichnis (aus der vorherigen versuche zu erkunden, während die Ausgabe), lief "grails clean" und "grails upgrade" (Beantwortung von "y", wo Sie dazu aufgefordert werden).
Allerdings habe ich konsequent bekomme "Invalid duplicate class definition" Konflikte zwischen den Klassen in \grails\qotd\src\java und \grails\qotd\grails-app - {- Controllern,services,conf}.
Gibt es zusätzliche manuelle Schritte, die ich durchführen muss?
- Was haben Sie in \src\java-Verzeichnis? Sind Sie leer?
- Nein, es ist nicht leer. src\java enthält die folgenden .groovy-Dateien: BootStrap -, Config -, DataSource -, Zitieren, QuoteController, QuoteControllerTests, QuoteService, QuoteServiceIntegrationTests, QuoteServicetests, QuoteTests und UrlMappings. Muss ich zum löschen aus?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn, wie Sie schon in den Kommentaren deine /src/java enthält .groovy-Dateien - das könnte definitiv zu einem unerwarteten Verhalten führen. Ich habe nicht auf deine Frage, aber jede Zeit, die ich hatte .groovy-Datei nicht mit den Namen der Klasse drin, ich würde merkwürdige Zusammenstellung Probleme - also denke ich, Sie könnten mit einem ähnlichen Problem.
Wenn Sie Dateien /Klassen mit demselben Namen in zwei Standorte, das sind die wahrscheinlich Schuldigen. Wenn Sie haben .groovy-Dateien in /src/java, das ist eine weitere mögliche Quelle.
Auch setzen BootStrap -, Config -, DataSource -, und URLMappings in /src/java, das ist eine weitere potenzielle Quelle der Probleme. Ich würde klar aus Ihrem /src/java, indem Sie sicher, dass alle Dateien in Ihren passenden Plätzen unter grails-app.
Ich Verstand Ihr problem.
Die Lösung ist, einfach ändern Sie die grails-Version auf 1.2.0 in der Anwendung.Eigenschaften-Datei in Ihrer Anwendung
neue grails-version.