- Parent-POM bindet das neue Modul ein und pflegt die jpackage-Plugin-Version - pdf-umbenenner-packaging enthält jpackage-Inputs: Launcher-Batches, Icon, Beispiel-Properties und Icon-README - CLAUDE.md und docs/betrieb.md ergänzen die MSI-/Packaging-Hinweise - Arbeitspaket-Dokumente M14 und M15 neu aufgenommen
7.0 KiB
M15 - Arbeitspakete
Geltungsbereich
Dieses Dokument beschreibt ausschließlich die Arbeitspakete für den definierten Meilenstein M15 – MSI-Installer (V3.0).
Der Stand V2.5 (M14 abgeschlossen) wird als vollständig umgesetzt vorausgesetzt:
- Modul
pdf-umbenenner-packagingexistiert - Maven-Profil
releaseist konfiguriert icon.ico,PDF-KI-Renamer.bat,PDF-KI-Renamer-GUI.batliegen unterpdf-umbenenner-packaging/src/main/packaging/
Die Arbeitspakete sind so geschnitten, dass Opus 4.7 sie in einem Durchgang
vollständig umsetzen kann. Nach jedem Arbeitspaket muss mvn clean verify
(ohne Profil) fehlerfrei durchlaufen.
Zielbild von M15
Nach Abschluss von M15 erzeugt mvn clean package -P release einen vollständigen
MSI-Installer (PDF-KI-Renamer-2.5.0.msi) der:
- die Anwendung nach
C:\Program Files\PDF KI Renamer\installiert, - eine Beispiel-Konfiguration nach
C:\ProgramData\PDF KI Renamer\config\application.example.propertiesablegt, - beide Batch-Dateien ins Installationsverzeichnis legt,
- einen Startmenü-Eintrag für den GUI-Start erstellt,
- einen Desktop-Shortcut erstellt,
- über „Programme und Features" sauber deinstallierbar ist.
Abgrenzungen
Explizit nicht Bestandteil von M15
- Automatische Konfigurationsauflösung aus
ProgramData(bleibt--config-Sache) - Code-Signing des MSI
- Upgrade-Logik (MajorUpgrade, automatisches Deinstallieren alter Versionen)
- Änderungen an fachlicher Logik, GUI, headless-Betrieb oder Persistenz
- Neue Tests
Unveränderte Leitplanken
--type MSIersetzt--type EXEim Profilrelease- Der Normalbuild (
mvn clean verify) bleibt unverändert - Bestehende Module außer
pdf-umbenenner-packagingwerden nicht angefasst
Verbindliche M15-Regeln
1. Installationsverzeichnis
C:\Program Files\PDF KI Renamer\
2. Konfigurationsverzeichnis
C:\ProgramData\PDF KI Renamer\config\
Die Beispiel-Config wird aus docs/examples/application.properties des Projekts
in dieses Verzeichnis kopiert und als application.example.properties abgelegt.
3. Batch-Dateien
Beide Batch-Dateien landen im Installationsverzeichnis.
Die Pfade in den Batch-Dateien müssen auf das Installationsverzeichnis angepasst werden
(nicht mehr relativ per %~dp0, sondern absolut via Installationspfad-Variable oder
weiterhin relativ – beides ist akzeptabel solange es funktioniert).
4. Startmenü & Desktop
- Startmenü-Gruppe:
PDF KI Renamer - Startmenü-Eintrag:
PDF KI Renamer→ startet GUI - Desktop-Shortcut:
PDF KI Renamer→ startet GUI
5. Deinstallation
Saubere Deinstallation über „Programme und Features". Vom Installer angelegte
Dateien werden entfernt. Nutzerdaten in ProgramData (Konfiguration, Logs, DB)
werden nicht gelöscht.
AP-001 MSI-Typ und Installer-Ressourcen vorbereiten
Voraussetzung
M14 ist abgeschlossen. mvn clean verify ist grün.
Ziel
Das Profil release erzeugt einen MSI statt einer EXE,
und alle notwendigen Installer-Ressourcen liegen bereit.
Muss umgesetzt werden
-
In
pdf-umbenenner-packaging/pom.xmlim Profilrelease:<type>EXE</type>→<type>MSI</type>- Folgende Windows-spezifische jpackage-Optionen ergänzen:
<winShortcut>true</winShortcut> <winMenu>true</winMenu> <winMenuGroup>PDF KI Renamer</winMenuGroup> <winDirChooser>true</winDirChooser> <winShortcutPrompt>false</winShortcutPrompt> <installDir>PDF KI Renamer</installDir>
-
Beispiel-Konfiguration als Installer-Ressource bereitstellen:
docs/examples/application.propertiesnachpdf-umbenenner-packaging/src/main/packaging/application.example.propertieskopieren (als versionierte Kopie im Modul – nicht das Original verschieben).
-
mvn clean verifymuss weiterhin grün bleiben.
Fertig wenn
<type>MSI</type>in der POM gesetzt- Windows-Optionen konfiguriert
application.example.propertiesuntersrc/main/packaging/vorhandenmvn clean verifygrün
AP-002 ProgramData-Verzeichnis und Beispiel-Config im Installer verankern
Voraussetzung
AP-001 ist abgeschlossen.
Ziel
Der MSI-Installer legt beim Installieren die Beispiel-Config unter
C:\ProgramData\PDF KI Renamer\config\application.example.properties ab.
Technischer Hintergrund
jpackage unterstützt --app-content zum Hinzufügen zusätzlicher Dateien
in das Anwendungs-Image. Diese landen jedoch im Installationsverzeichnis,
nicht in ProgramData.
Für ProgramData gibt es zwei Wege:
- Weg A: jpackage
--resource-dirmit WiX-Override (komplex, fehleranfällig) - Weg B: Die Beispiel-Config über
--app-contentins Installationsverzeichnis legen und in der Dokumentation beschreiben, dass der Nutzer sie nachProgramDatakopieren soll (einfach, robust)
Verbindlich für M15: Weg B.
Muss umgesetzt werden
-
application.example.propertiesvia--app-contentin das Anwendungsverzeichnis einbinden:<appContent> <appContent>src/main/packaging/application.example.properties</appContent> </appContent> -
mvn clean verifymuss weiterhin grün bleiben.
Fertig wenn
application.example.propertiesist in der jpackage-Konfiguration alsappContenteingebundenmvn clean verifygrün
AP-003 Desktop-Shortcut konfigurieren
Voraussetzung
AP-002 ist abgeschlossen.
Ziel
Der Installer erstellt zusätzlich einen Desktop-Shortcut.
Technischer Hintergrund
jpackage unterstützt Desktop-Shortcuts über --win-shortcut.
<winShortcut>true</winShortcut> ist bereits in AP-001 gesetzt –
das erzeugt jedoch primär einen Startmenü-Eintrag.
Für einen Desktop-Shortcut ist ein zusätzlicher WiX-Override nötig.
Prüfe zunächst ob <winShortcut>true</winShortcut> in Kombination mit
<winShortcutPrompt>false</winShortcutPrompt> bereits einen Desktop-Shortcut erzeugt.
Falls nicht, dokumentiere dies als bekannte Einschränkung in betrieb.md
und überspringe den WiX-Override (zu komplex für M15).
Fertig wenn
- Entweder Desktop-Shortcut funktioniert, oder
- die Einschränkung ist in
betrieb.mddokumentiert mvn clean verifygrün
AP-004 Dokumentation aktualisieren
Voraussetzung
AP-001 bis AP-003 sind abgeschlossen.
Ziel
Die Projektdokumentation spiegelt den V3.0-Stand korrekt wider.
Muss umgesetzt werden
-
docs/betrieb.md– Abschnitt „Windows-EXE (V2.5)" erweitern zu „Windows-Installer (V3.0)":- MSI-Build-Kommando dokumentieren
- Installationsverzeichnis dokumentieren
- Hinweis: Beispiel-Config liegt nach Installation im Installationsverzeichnis,
muss manuell nach
C:\ProgramData\PDF KI Renamer\config\kopiert und angepasst werden - Hinweis auf SmartScreen-Warnung (kein Code-Signing)
- Headless-Betrieb: Beispiel-Aufruf mit
--config
-
CLAUDE.mdaktualisieren:- Build-Kommando für MSI ergänzen
Fertig wenn
betrieb.mdvollständig aktualisiertCLAUDE.mdaktualisiertmvn clean verifygrün- M15 vollständig abgeschlossen