6.3 Theme Umstellung zu Maven
First Things First
Bevor die Umstellung eines Themes vollzogen wird, sollte ein Sicherungs-Branch des aktuellen Themes erstellt werden.
In Eclipse funktioniert das wie folgt:
Rechtsklick auf Projekt -> Team -> Switch to -> New Branch
Als Konvention sollte der Name pre-maven-stable gelten.
Anschließend den Branch in das Repository pushen mit
Rechtsklick auf Projekt -> Team -> Push Branch 'pre-maven-stable'
Jetzt wieder in den master wechseln mit
Rechtsklick auf Projekt -> Team -> Switch to -> master
Natürlich funktioniert das auch mit jedem anderen Git Verwaltungs-Tool.
Neue Struktur
Als Basis für die Umstellung dient das Repository der Theme Boilerplate. Sie kann sich von GitHub über die URL https://github.com/intranda/goobi-viewer-theme-boilerplate geklont werden.
Es wird davon ausgegangen, dass die Entwicklungsumgebung auf Eclipse basiert. Diese IDE benötigt eine feste Ordner- und Dateistruktur. Wie eine Entwicklungsumgebung mit Eclipse einzurichten ist, kann unter 8.6 Entwicklungsumgebung nachgelesen werden.
Die neue Struktur sieht nun so aus:
Diese Struktur ist bindend und muss in jedem Theme-Projekt vorhanden sein.
Migration eines Themes zu Maven
Bei einer Migration wird davon ausgegangen, dass bereits ein Theme existiert und dieses auf Maven umgestellt werden soll. Dazu sind folgende Schritte durchzuführen.
Der komplette Ordner
/WebContent
wird aus der Boilerplate kopiert und in die oberste Ebene des Theme-Repos eingefügt. Der Unterordner/WebContent/resources/themes/
wird gelöscht.Der alte Theme-Ordner
/src/META-INF/resources/resources/themes/
wird in den Ordner/WebContent/resources/
verschoben und anschließend der komplette Inhalt des Ordners/src
gelöscht. Der Ordner/src
kann bestehen bleiben.Im Ordner
/.settings
der Boilerplate befindet sich die Datei org.eclipse.wst.common.project.facet.core.xml. Diese wird kopiert und in den Ordner/.settings
des Themes kopiert. Die vorhandene Datei wird durch die neue überschrieben.Jetzt einen Rechtsklick auf das Theme-Projekt machen und es zu einem Maven-Projekt konvertieren. Dazu den Weg über
Configure -> Convert to Maven Project
gehen. Die Einstellungen können dabei auf Standard bleiben und den Dialog überFinish
beenden.Auf der obersten Ebene des Boilerplate-Repos liegt die Datei pom.xml. Diese wird kopiert und an die selbe Stelle im Theme-Repo eingefügt. Die vorhandene Datei wird überschrieben.
An der pom.xml müssen noch Anpassungen gemacht werden, die wie folgt aussehen.
Die Pfade in der Datei Gruntfile.js müssen angepasst werden. Dazu dient die Datei
Gruntfile.js
aus dem Boilerplate-Repo als Vorlage.Die Datei build.xml kann aus dem Theme-Repo gelöscht werden. Sie wird nicht länger benötigt.
Die Änderungen an der Datei pom.xml werden aktiv, indem das Projekt aktualisiert wird. Das geschieht über den Weg
Rechtsklick auf das Projekt -> Maven -> Update Project...
.Jetzt kann das Maven-Projekt installiert werden. Das geschieht, indem ein
Rechtsklick auf das Projekt
gemacht wird undRun as -> Maven install
ausgeführt wird. Die Konsole von Eclipse gibt nach Erfolg eine entsprechende Meldung aus.Das Projekt kann nun in dem internen Tomcat von Eclipse gestartet werden. Dazu
Rechtsklick auf das Projekt -> Run as -> Run on Server
auswählen. Den installierten Tomcat anklicken und mitFinish
bestätigen. Wenn der Goobi viewer unter den Standardeinstellungen läuft, dann ist er nun unter http://localhost:8080/viewer/ zu erreichen. Es darf immer nur ein Projekt im Tomcat laufen, da es ansonsten zu Konflikten kommt.
Last updated