2021.06

Maven-Archetype als Basis für neue MyCoRe Anwendungen

Zur Entwicklung einer eigenen MyCoRe-Anwendung stellen wir ein Anwendungsgerüst (Maven-Archetype) zur Verfügung.

Nach Abfrage von verschiedenen Parametern generiert es eine neue MyCoRe-Anwendung, in der bereits die typische Ordnerstruktur erzeugt und eine Reihe von Voreinstellungen gesetzt sind. Dadurch entfällt das Umbenennen von Dateien und Ordner sowie das Suchen und Ersetzen von Properties und Textbausteinenen, wie es früher nach dem Kopieren der Skeleton-Anwendung notwendig war.

Maven-Archetype installieren

Voraussetzungen

Für die Anwendungsentwicklung mit dem Maven-Archetype wird die unter Systemanforderungen beschriebene Software benötigt.

Mit einer neuen Anwendung starten

Im Folgenden beschreiben wir, wie man an der Kommandozeile oder mit Eclipse unter Verwendung des Maven-Archetypes eine neue Anwendung erstellt. Beispielhaft verwenden wir den Namen „Skeleton“.

Es sollte jedoch gleich der echte Name der neu zu erstellenden Anwendung gewählt werden.

a) über die Kommandozeile

Um den Maven-Archetype nutzen zu können, muss er vorher in das lokale Maven-Repository kopiert und mittels crawl im lokalen Maven-Archetype-Katalog registriert werden.

1
2
 mvn dependency:get -Dartifact="org.mycore.skeleton:mycore-skeleton-archetype:2022.06-SNAPSHOT" -DremoteRepositories=https://oss.sonatype.org/content/repositories/snapshots
 mvn archetype:crawl     

Wir empfehlen für jede Anwendung ein eigenes Arbeitsverzeichnis anzulegen.
(z.B. C:\skeleton\workspace oder ~/skeleton/workspace).

Das folgende Maven-Kommando startet das Erstellen der eigenen Anwendung:

1
 mvn archetype:generate -Dfilter=mycore-skeleton-archetype

Man wählt den mycore-skeleton-archetype aus und gibt anschließend folgende Parameter an:

groupId: org.myinstition.skeleton
artifactId: skeleton
version: 1.0-SNAPSHOT (default)
package: org.myinstition.skeleton (default)
mcrSolrClassCoreName: skeleton_class
mcrSolrMainCoreName: skeleton_main
organizationName: My Institution
projectName: My new Skeleton App
  • Die drei ersten Parameter werden in den zu erstellenden Maven *.pom - Dateien verwendet.
  • package ist das Root-Package für die zu erstellenden Java-Klassen.
  • mcrSolrMainCoreName bezeichnet den Namen (URL-Pfad auf dem SOLR-Server) des Haupt-Solr-Kerns der Anwendung.
  • mcrSolrClassCoreName bezeichnet den Namen (URL-Pfad auf dem SOLR-Server) des Solr-Kerns für Klassifikationen der Anwendung.
  • organizationName ist der Name der Einrichtung, die in die Lizenzdatei eingetragen wird.
  • Aus projectName wird der Titel der Webanwendung abgeleitet.

b) als neues Eclipse-Projekt

In der Entwicklungsumgebung Eclipse kann eine neue Anwendung (Eclipse-Projekt) über einen Wizzard erstellt werden.

Der Wizzard wird über File > New > Maven Project gestartet.

Maven-Archetype auswählen

Abbildung: Eclipse - Wizzard ‘New Maven project’ starten

Dann muss ein externer Katalog hinzugefügt, werden, der unsere Archetype-Konfiguration enthält.
Formular erstellen

Abbildung: Eclipse - Maven-Archetype Catalog konfigurieren

Remote Catalog

Abbildung: Eclipse - Remote Catalog hinzufügen

Hier unter Catalog File die folgende URL eintragen:
https://raw.githubusercontent.com/MyCoRe-Org/mycore-skeleton-archetype/main/archetype-catalog.xml

Abbildung: Eclipse - Catalog File eintragen

Dann kann unser MyCoRe Skeleton Archetype ausgewählt werden:
Formular erstellen

Abbildung: Eclipse - Archetype auswählen

Abschließend werden die initialen Parameter erfasst:
Formular erstellen

Abbildung: Eclipse - Archetype-Parameter setzen

Mit klick auf Finish wird die neue Anwendung erstellt. Im Abschnitt Initialisierung der eigenen Anwendung werden die nächsten Schritte zur Anpassung und weiteren Konfiguration beschrieben.