Im folgenden wird beschrieben, wie man eine komplette Entwicklungsumgebung für die Entwicklung von Fakturama ab Version 2 erstellt.
Diese Anleitung wurde am 24.01.2025 komplett überarbeitet.
Vorbereitungen
- aktuelle Version (derzeit 2024-03) der Eclipse-Entwicklungsumgebung
laden (möglichst das RCP-Package, das bringt schon einige wichtige
Plugins mit). - Git installieren
- JDK 17 installieren (am besten von Adoptium)
- Repository clonen:
git clone https://bitbucket.org/fakturamadev/fakturama-2.git - Wechsel ins Repository-Verzeichnis:
cd fakturama-2/Fakturama-Parent - ggf. Wechsel auf anderen Branch:
git checkout --track origin/develop - Eclipse starten, Welcome Screen wegklicken
- Menü Import projects…

fakturama2/Fakturama-Parentauswählen, Finish- die „Marketplace solutions“ können weggeklickt werden
- aktuell angezeigte Fehler im „Problems“ view können ignoriert werden
Target einrichten
Im Unterprojekt com.sebulli.fakturama.target die Datei com.sebulli.fakturama.target.target öffnen. Bis die ganzen Targets aufgelöst werden, dauert es meist eine Weile.
Wenn alle Targets aufgelöst werden konnten, sollte die Ansicht ungefähr so aussehen:

Nun muß man das Target noch für die aktuelle IDE setzen:

Das Projekt wird dabei gebaut, auch das dauert einen Moment. Einige Fehler bleiben zu diesem Zeitpunkt noch übrig.
Setzen der API Baseline
Als nächstes muß die API Baseline gesetzt werden. Dazu wählt man in den Preferences (Window → Preferences) den entsprechenden Unterpunkt (geht am besten über die Suche).



Anschließend den Button Refresh drücken sowie Finish → Apply & Close.

Bauen des Projektes
Zunächst muß die Target-Plattform im lokalen Maven-Repository hinterlegt werden. Dazu startet man den Build für dieses konkrete Plugin mit der rechten Maustaste auf das Projekt:

Anschließend startet man den Build für das komplette Projekt. Dies geschieht ebenfalls per rechter Maustaste auf das Parent-Modul (Fakturama-Parent) und Auswahl des Menüpunktes „Maven build…“. Für eine Windows-Umgebung können folgende Einstellungen genutzt werden:

Bei einem Project → Clean… werden nun sowohl die Entity-Klassen als auch die Metaklassen generiert.
Die JAXB-Klassen für den Webshop-Import werden direkt über Maven generiert, das geht also automatisch.
Beheben der Validierungsfehler in persistence.xml
Dazu muß die persistence_2_0.xsd in den Einstellungen eingetragen werden:

Starten der Testumgebung
Für das Starten der Testumgebung existieren sog. Launch Configurations. Diese sind je nach Betriebssystem unterschiedlich. Für Windows kann sieht diese Launch Configuration so aus (erreichbar über Run → Run Configurations):

Wichrtig ist, daß im Tab Plug-ins alle Abhängigkeiten erfüllt sind. Das kann über den Butto Validate Plug-ins geprüft werden. Nur wenn hier keine Fehlermeldungen kommen, ist die Umgebung lauffähig.

Ggf. müssen hier abhängige Plug-ins hinzugefügt werden. Beim Starten erscheinen derzeit noch einige Warnungen, die allerdings vorerst ignoriert werden können.
