EN · DE · RU · FR · ES

#1871: README.txt (projectforge-common)

projectforge-common/README.txt Документация модуля — модуль projectforge-common, projectforge-common/README.txt 6 строк · 3 кода · 0 комментариев · 3 пустых
Краткий документ ориентации по модулю для библиотеки projectforge-common. Направляет разработчиков использовать projectforge-webapp в качестве основной точки входа для разработки и объясняет, что projectforge-common автоматически доступна как транзитивная зависимость через Maven-репозиторий ProjectForge.

Архитектура

Этот README служит минимальным ориентировочным документом для разработчиков, изучающих модуль projectforge-common. Его содержимое намеренно краткое, поскольку этот модуль не является самостоятельным приложением — это библиотека, используемая как зависимость другими модулями ProjectForge.

Полный текст

Пожалуйста, сначала используйте projectforge-webapp для вашей разработки!

Этот модуль содержит некоторые общие классы ProjectForge.

Вам не нужен этот модуль для разработки веб-приложения ProjectForge.
Он автоматически доступен через Maven-репозиторий ProjectForge.

Назначение модуля

projectforge-common — это фундаментальный библиотечный модуль, содержащий общие служебные классы, структуры данных и сквозные функции, используемые в экосистеме ProjectForge. Он включает:

Модель зависимостей

Модуль публикуется в Maven-репозиторий и используется другими модулями через объявления зависимостей Gradle. В файлах сборки Gradle (например, build.gradle.kts в других модулях) он указывается как:

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

Это означает, что это зависимость проекта в многомодульной сборке Gradle, и он публикуется как Maven-артефакт для внешнего использования.

Ключевое проектное решение

Указание «сначала используйте projectforge-webapp для вашей разработки» означает, что projectforge-webapp является предполагаемой точкой входа для разработчика — он предоставляет полный стек веб-приложения. Модуль projectforge-common является строительным блоком, а не отправной точкой. Такая многоуровневая архитектура разделяет задачи: общие утилиты изолированы, чтобы инструменты, скрипты и плагины могли зависеть от них без подключения полного стека веб-приложения.

Конфигурация сборки

Модуль использует плагин соглашений Gradle buildlogic.pf-module-conventions и плагин Kotlin JVM. Он объявляет API-зависимости от SLF4J, Logback, Log4j2, библиотек Apache Commons и Zip4j для работы с ZIP-архивами.

Упоминание в README «Maven-репозитория ProjectForge» предполагает, что проект изначально использовал Maven для управления зависимостями до миграции на Gradle. Репозиторий, предположительно, размещает скомпилированные JAR-файлы projectforge-common для использования внешними инструментами и скриптами, которым нужны утилиты ProjectForge без полного веб-приложения.

История Git

9ebb88522 Начальный коммит