EN · DE · RU · FR · ES

#1871: README.txt (projectforge-common)

projectforge-common/README.txt Moduldokumentation — Modul projectforge-common, projectforge-common/README.txt 6 Zeilen · 3 Code · 0 Kommentare · 3 Leerzeilen
Kurzes Modul-Orientierungsdokument für die Bibliothek projectforge-common. Weist Entwickler an, projectforge-webapp als primären Entwicklungseinstiegspunkt zu verwenden, und erklärt, dass projectforge-common automatisch als transitive Abhängigkeit über das ProjectForge-Maven-Repository verfügbar ist.

Architektur

Diese README dient als minimales Orientierungsdokument für Entwickler, die das Modul projectforge-common erkunden. Der Inhalt ist bewusst knapp gehalten, da dieses Modul keine eigenständige Anwendung ist – es ist eine Bibliothek, die als Abhängigkeit von anderen ProjectForge-Modulen genutzt wird.

Vollständiger Text

Bitte verwenden Sie zuerst projectforge-webapp für Ihre Entwicklung!

Dieses Modul enthält einige gemeinsame Klassen von ProjectForge.

Sie benötigen dieses Modul nicht für die Entwicklung der ProjectForge-Web-App.
Es ist automatisch über das ProjectForge-Maven-Repository verfügbar.

Modulzweck

projectforge-common ist ein grundlegendes Bibliotheksmodul, das gemeinsam genutzte Hilfsklassen, Datenstrukturen und übergreifende Belange enthält, die im gesamten ProjectForge-Ökosystem verwendet werden. Es umfasst:

Abhängigkeitsmodell

Das Modul wird in einem Maven-Repository veröffentlicht und von anderen Modulen über Gradle-Abhängigkeitsdeklarationen konsumiert. In den Gradle-Build-Dateien (z. B. build.gradle.kts in anderen Modulen) wird es wie folgt referenziert:

implementation(project(":projectforge-common"))

Dies bedeutet, dass es sich um eine Projektabhängigkeit im Multi-Modul-Gradle-Build handelt, und es wird als Maven-Artefakt für die externe Nutzung veröffentlicht.

Wichtige Designentscheidung

Die Anweisung, „zuerst projectforge-webapp für Ihre Entwicklung zu verwenden“, zeigt, dass projectforge-webapp der vorgesehene Entwicklungseinstiegspunkt ist – es bietet den vollständigen Webanwendungs-Stack. Das Modul projectforge-common ist ein Baustein, kein Ausgangspunkt. Diese geschichtete Architektur trennt Belange: Gemeinsame Hilfsprogramme sind isoliert, sodass Tools, Skripte und Plugins von ihnen abhängen können, ohne den gesamten Webanwendungs-Stack einzubeziehen.

Build-Konfiguration

Das Modul verwendet das Gradle-Convention-Plugin buildlogic.pf-module-conventions und das Kotlin-JVM-Plugin. Es deklariert API-Abhängigkeiten von SLF4J, Logback, Log4j2, Apache-Commons-Bibliotheken und Zip4j für die ZIP-Archivverarbeitung.

Der Hinweis in der README auf „ProjectForge's Maven-Repository“ deutet darauf hin, dass das Projekt ursprünglich Maven für das Abhängigkeitsmanagement verwendete, bevor es zu Gradle migrierte. Das Repository hostet vermutlich kompilierte JARs von projectforge-common zur Nutzung durch externe Tools und Skripte, die ProjectForge-Hilfsprogramme benötigen, ohne die vollständige Webanwendung.

Git-Verlauf

9ebb88522 Erster Commit