Bibliotheken
Eine UI5-App muss jede Bibliothek, die sie nutzt, in sap.ui5/dependencies/libs nennen. Fehlt eine, läuft die App oft trotzdem – bis sie langsam startet, synchron nachlädt oder im Launchpad bricht. Die Bibliotheksanalyse zeigt für die laufende App, welche Bibliotheken geladen sind, woher sie kommen, ob das Manifest sie deklariert und welche Controls daraus stammen. Analyse und Vorschlag sind kostenlos; den Export gibt es mit Pro.
- Edition
- Community
- Tab
- „Bibliotheken“
- Export
- Pro
- Oberflächen
- DevTools-Panel und Side-Panel
- Auf PROD
- erlaubt, die Analyse liest nur
Analysieren
Öffne in den DevTools (F12) das Panel FrontTailor oder das Side-Panel und wähle den Tab Bibliotheken. Bis du Analysieren klickst, läuft in der Seite nichts.
- Öffne die App und navigiere zu den Views, die du prüfen willst – auch Dialoge.
- Wähle im Panel den Tab Bibliotheken und klicke Analysieren.
- Lies das Urteil und die Befunde. Fehlt eine Deklaration, nimmt der Manifest-Vorschlag sie auf.
- Kopiere den Vorschlag mit Kopieren in die
manifest.jsonder App. - Nach weiteren Schritten in der App klicke Erneut analysieren.

- Das Urteil, etwa „Das Manifest deklariert jede Bibliothek, die die App nutzt.“
- Zähler je Schweregrad: Fehler, Warnung, Info, Hinweis.
- Was geprüft wurde: App, UI5-Version,
minUI5Version, App-Controls und Elemente. Darunter die Netzwerk-Zusammenfassung. - Hinweis, wenn der Resource-Timing-Puffer des Browsers voll ist (siehe Netzwerk).
- Erneut analysieren.
Gesehen werden nur Controls, die gerade existieren. Dialoge und Views, die noch nie offen waren, fehlen – öffne sie und analysiere erneut. Im Launchpad zählt die laufende App, nicht die Shell; Templates von Fiori Elements gehören zum Framework.
Befunde

sap.ui.layout ist deklariert, aber (noch) ungenutzt.- Nach Bibliothek oder Control filtern.
- Schwere: Alle, Fehler, Warnung, Info, Hinweis.
- Schweregrad des Befunds.
- Netzwerk: wie die Bibliothek kam – Preload oder Einzelmodule, Zahl der Module, Theme-Dateien, Server, Größe und Dauer. Darunter die geladenen Module als Beleg.
- Behebung mit dem konkreten Schritt; darunter der Link in die UI5-Dokumentation.
- Export als CSV oder Markdown (siehe Export).
| Befund | Schwere | Wann |
|---|---|---|
| Genutzt, aber nicht deklariert | Fehler | Controls der App stammen aus der Bibliothek, und weder Manifest noch Bootstrap noch eine deklarierte Bibliothek deckt sie ab |
| Nur im Bootstrap deklariert | Warnung | nur data-sap-ui-libs lädt sie – im Launchpad gibt es diese HTML-Seite nicht |
| Über eine andere Bibliothek vorgeladen | Info | nicht deklariert, kommt aber als Abhängigkeit einer deklarierten Bibliothek |
| Geladen, aber nicht deklariert | Warnung, in Fiori-Elements-Apps und im Launchpad Info | geladen, nichts erklärt sie, kein Control der App nutzt sie |
| Lazy deklariert, noch nicht geladen | Info | mit "lazy": true deklariert und noch nicht gebraucht |
| Deklariert, aber nicht geladen | Warnung | deklariert (nicht lazy), aber nicht geladen |
| Deklariert, aber kein Control der App nutzt sie | Hinweis | nur ein Hinweis, weil nicht geöffnete Views und Dialoge fehlen |
| Bibliothek älter als ihre minVersion | Warnung | minVersion der Deklaration über der geladenen Version; dazu Warnungen zu minUI5Version |
| Bibliotheksversion weicht vom Core ab | Warnung | Framework-Bibliothek mit anderer Version als sap.ui.core |
| Deklariert, aber kein Preload gefunden | Warnung | Netzwerk: Module kamen einzeln, während andere Bibliotheken ein Preload hatten |
| Über das Netzwerk geladen, nicht deklariert | Warnung oder Info | Netzwerk: angefragt, nicht deklariert, nichts erklärt sie |
| Kein Bibliotheks-Preload auf dem Server | Info | Netzwerk: überhaupt kein library-preload – Server oder Build, nicht das Manifest (etwa ui5 serve) |
Befunde mit Controls nennen Klasse, Anzahl und bis zu fünf Beispiele mit ID und View. Im Inspector zeigen öffnet das Control im Inspector, In der Seite markieren rahmt es in der App ein.
Manifest-Vorschlag

- Was ergänzt wurde, etwa „Ergänzt: sap.ui.layout“ – oder dass nichts fehlt.
- Warum jede Bibliothek deklarieren?: Preload, synchrone Requests, CSP, UI5 2.0 und Launchpad.
- Kopieren.
Der Vorschlag enthält die vorhandenen Deklarationen und ergänzt fehlende Bibliotheken. Leben alle Controls einer Bibliothek nur in Dialogen oder Popovern, schlägt er sie als "lazy": true vor – dann lädst du sie vor der Nutzung mit sap/ui/core/Lib.load. Deklarationen ohne Nutzung bleiben stehen: Prüfe sie, bevor du sie entfernst.
Geladene Bibliotheken und Netzwerk

- Manifest: deklariert oder nicht.
- Netzwerk: Preload, Einzelmodule, Bootstrap-Bündel oder keine Requests, mit Zahl der Module, synchronen Loads, Theme-Dateien, Server oder CDN, Größe und Dauer.
- Gekommen über: woher die Bibliothek stammt.
- Status der Bibliothek; daneben die Zahl der App-Controls aus ihr.
| Gekommen über | Bedeutung |
|---|---|
| App-Manifest | in sap.ui5/dependencies/libs der App |
| Komponente | im Manifest einer Komponente der App, etwa des List Reports |
| Bootstrap | data-sap-ui-libs oder window["sap-ui-config"].libs |
| Abhängigkeit | nicht-lazy Abhängigkeit einer geladenen Bibliothek |
| Lazy-Abhängigkeit | lazy Abhängigkeit einer geladenen Bibliothek – erklärt nichts, sie wird nicht vorgeladen |
| Framework | Launchpad-Shell oder ihre Plug-ins |
| Implizit | nichts davon – geladen, ohne dass etwas Sichtbares es erklärt |
Die Netzwerksicht liest die Resource-Timing-Einträge der Seite – so wie der Netzwerk-Tab der DevTools, aber auch im Side-Panel und ohne zusätzliche Requests. Der Browser hält standardmäßig 250 Einträge; danach fehlen weitere. FrontTailor ändert die Puffergröße nicht, sondern zeichnet ab dem Öffnen des Tabs jeden UI5-Request selbst auf. Ist der Puffer voll, sagt der Tab das: Benutze die App weiter und analysiere erneut.
Export
Mit ab Pro exportieren Markdown und CSV einen Bibliotheksbericht über alle Apps, die du in diesem Tab analysiert hast – etwa nacheinander geöffnete Apps eines Launchpads. Der Bericht enthält Bibliotheks- und Klassennamen, Control-IDs, View-Namen und die URL ohne Parameter, keine Daten der App; E-Mail-Adressen und IBANs in IDs werden maskiert. Die Analysen der Sitzung liegen nur bis zum Schließen des Tabs im Browser. Ohne Pro erklärt ein Klick auf den Export, was er enthält; Analyse, Befunde und Manifest-Vorschlag bleiben frei.
Befunde zu Bibliotheken im UI5-2.0-Check führen mit Bibliotheken analysieren direkt in diesen Tab.
Typische Probleme
| Was du siehst | Ursache und Lösung |
|---|---|
| „Keine App-Komponente in diesem Frame gefunden (Launchpad-Startseite?) …“ | Auf der Startseite gibt es keine App. Öffne eine App und analysiere erneut. |
| Deklariert, aber kein Control der App nutzt sie, obwohl die Bibliothek gebraucht wird | Die Controls leben in einer View oder einem Dialog, die noch nicht offen waren. Öffne sie und analysiere erneut – oder deklariere die Bibliothek lazy. |
| Kein Bibliotheks-Preload auf dem Server | Typisch für lokale Entwicklungsserver mit Quellen. Lokal nichts zu tun; prüfe die ausgelieferte App mit gebautem UI5. |
| Hinweis auf vollen Resource-Timing-Puffer | Requests zwischen Überlauf und Öffnen des Tabs fehlen. Ab jetzt zeichnet FrontTailor jeden UI5-Request auf: App benutzen und erneut analysieren. |
Siehe auch
- Funktionen im Überblick Funktionen · Qualität
- Zum Nachlesen SAPUI5 – The Comprehensive Guide (SAP PRESS)
- Hilfe von Menschen UI5 2.0: Readiness und Migration
- Doku UI5 2.0
- Doku Performance
- Doku Inspector
- Belege ADR-0341