AEM Developer Tools for Eclipse

Letzte Aktualisierung: 2023-11-27

Experience Manager Developer Tools for Eclipse-Logo

Übersicht

Experience Manager Developer Tools for Eclipse ist ein Eclipse-Plug-in, das auf dem Eclipse-Plug-in für Apache Sling basiert und unter der Apache-Lizenz 2 veröffentlicht wurde.

Es bietet mehrere Funktionen, die die AEM-Entwicklung vereinfachen:

  • Nahtlose Integration mit AEM-Instanzen über Eclipse Server Connector
  • Synchronisierung für Inhalte und OSGI-Bundles
  • Debugging-Unterstützung mit Code-Hot-Swapping-Funktion
  • Einfacher Bootstrap von AEM-Projekten über einen speziellen Projekterstellungsassistenten
  • Einfache Bearbeitung von JCR-Eigenschaften

Voraussetzungen

Bevor Sie die AEM Developer Tools verwenden, müssen Sie Folgendes tun:

HINWEIS

In macOS müssen Sie mit der rechten Maustaste klicken Eclipse.app und wählen Sie Paketinhalt anzeigen um eclipse.ini.

Installieren der AEM Developer Tools for Eclipse

Sobald die oben genannten Voraussetzungen erfüllt sind, können Sie das Plug-in wie folgt installieren:

  1. Durchsuchen Sie die AEM Developer Tools-Website.

  2. Kopieren Sie den Installations-Link.

    Alternativ können Sie auch ein Archiv herunterladen, anstatt den Installations-Link zu verwenden. Diese Methode ermöglicht eine Offline-Installation, aber Sie erhalten auf diese Weise keine automatischen Update-Benachrichtigungen.

  3. Öffnen Sie in Eclipse das Menü Hilfe.

  4. Klicken Sie auf Neue Software installieren.

  5. Klicken Sie auf Hinzufügen….

  6. In das Feld Name geben Sie AEM Developer Tools ein.

  7. Kopieren Sie in das Feld Speicherort die Installations-URL.

  8. Klicken Sie auf Hinzufügen.

  9. Prüfen Sie die beiden Plug-ins für AEM und Sling.

  10. Klicken Sie auf Weiter.

  11. Klicken Sie im Fenster Installationsdetails erneut auf Weiter.

  12. Akzeptieren Sie die Lizenzvereinbarungen und klicken Sie auf Beenden.

  13. Klicken Sie auf Jetzt neu starten, um Eclipse neu zu starten.

Die AEM-Perspektive

In Eclipse bestimmt eine Perspektive die innerhalb eines Fensters verfügbaren Aktionen und Ansichten und ermöglicht eine aufgabenorientierte Interaktion mit Ressourcen in Eclipse. Weitere Informationen zur Perspektive finden Sie in der Eclipse-Dokumentation.

Experience Manager Developer Tools for Eclipse bieten eine AEM-Perspektive, die Ihnen volle Kontrolle über Ihre AEM-Projekte und -Instanzen bietet. So öffnen Sie die AEM-Perspektive:

  1. Wählen Sie in der Eclipse-Menüleiste Fenster > Perspektive > Offene Perspektive > Sonstiges.
  2. Wählen Sie im Dialogfeld AEM aus und klicken Sie auf Öffnen.

Die AEM-Perspektive in Eclipse

Multi-Modul-Beispielprojekt

Experience Manager Developer Tools for Eclipse enthalten ein Beispielprojekt mit mehreren Modulen, das Ihnen den Einstieg in das Projekt-Setup von Eclipse erleichtert. Es dient auch als Best-Practice-Leitfaden für verschiedene AEM-Funktionen. Erfahren Sie mehr über den Projektarchetyp.

Führen Sie die folgenden Schritte aus, um das Beispielprojekt zu erstellen:

  1. Suchen Sie im Menü Datei > Neu > Projekt den Abschnitt AEM und wählen Sie AEM-Multi-Modul-Beispielprojekt.

    AEM-Multi-Modul-Beispielprojekt

  2. Klicken Sie auf Weiter.

    HINWEIS

    Dieser Schritt kann einen Moment dauern, da m2eclipse die Archetypkataloge scannen muss.

  3. Wählen Sie im Menü com.adobe.granite.archetypes : sample-project-archetype : <highest-number> aus und klicken Sie dann auf Weiter.

    Auswählen der Archetypversion

  4. Geben Sie in die folgenden Felder Daten für das Beispielprojekt ein:

    • Name
    • Gruppen-ID
    • Artefakt-ID
    • appID – Sie müssen die Optionen unter Erweitert erweitern, um diesen Wert festzulegen.
    • appTitle – Sie müssen ggf. die Optionen unter Erweitert erweitern, um diesen Wert festzulegen.
    • Package – Sie müssen die Optionen unter Erweitert erweitern, um diesen Wert festzulegen.

    Definieren von Archetypeigenschaften

  5. Klicken Sie auf Weiter.

  6. Anschließend konfigurieren Sie einen AEM-Server, mit dem sich Eclipse verbindet.

    Um die Debugger-Funktion zu verwenden, müssen Sie AEM im Debugging-Modus starten. Dies kann z. B. erreicht werden, indem Sie Folgendes zur Befehlszeile hinzufügen:

        -nofork -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=10123
    

    Herstellen einer Verbindung zum AEM-Server

  7. Klicken Sie auf Beenden. Die Projektstruktur wird erstellt.

    HINWEIS

    Bei einer Neuinstallation (genauer gesagt: wenn die Abhängigkeiten von Maven noch nie heruntergeladen wurden) wird das Projekt möglicherweise mit Fehlern erstellt. Folgen Sie in diesem Fall den Anweisungen unter Beheben einer ungültigen Projektdefinition.

Importieren vorhandener Projekte

Mit der Funktion Neues Projekt können Sie die richtige Struktur für Ihre Anforderungen erstellen:

  1. Folgen Sie den Anweisungen, um ein Multi-Modul-Beispielprojekt zu erstellen, und es werden die folgenden Projekte für Sie erstellt, die eine sinnvolle Trennung der Belange ermöglichen:

    • PROJECT.ui.apps für /apps- und /etc-Inhalte
    • PROJECT.ui.content für /content, der erstellt wird
    • PROJECT.core für Java™-Bundles (diese werden relevant, sobald Sie Java™-Code hinzufügen möchten)
    • PROJECT.it.launcher und PROJECT.it.tests für Integrationstests
  2. Ersetzen Sie den Inhalt Ihres PROJECT.ui.apps-Projekts durch die Ordner apps und etc Ihres Pakets:

    1. Erweitern Sie im Bedienfeld „Projekt-Explorer“ PROJECT.ui.apps > src > main > content > jcr_root > apps.
    2. Rechtsklicken Sie auf die apps Ordner und wählen Sie Einblenden > System Explorer.
    3. Löschen Sie die Ordner apps und etc, die jetzt angezeigt werden sollten, und platzieren Sie hier die Ordner apps und etc Ihres Inhaltspakets.
    4. Klicken Sie in Eclipse mit der rechten Maustaste auf die PROJECT.ui.apps Projekt und wählen Sie Aktualisieren.
  3. Führen Sie dann dasselbe für PROJECT.ui.content aus und ersetzen Sie den Inhaltsordner durch den Ordner aus Ihren Paketen:

    1. Erweitern Sie im Bedienfeld „Projekt-Explorer“ PROJECT.ui.content > src > main > content > jcr_root > content.
    2. Klicken Sie mit der rechten Maustaste auf den tieferen Inhaltsordner und wählen Sie Einblenden > System Explorer.
    3. Löschen Sie die Inhaltsordner, der jetzt angezeigt werden sollte, und platzieren Sie hier den Inhaltsordner Ihres Inhaltspakets.
    4. Klicken Sie in Eclipse mit der rechten Maustaste auf die PROJECT.ui.content Projekt und wählen Sie Aktualisieren.
  4. Jetzt müssen Sie die filter.xml-Dateien dieser beiden Projekte aktualisieren, damit sie dem Inhalt Ihres Inhaltspakets entsprechen. Öffnen Sie dazu die Datei META-INF/vault/filter.xml Ihres Inhaltspakets in einem gesonderten Text-/Code-Editor.

    • Dies ist ein Beispiel dafür, wie Ihre Datei filter.xmlaussehen kann:
    <?xml version="1.0" encoding="UTF-8"?>
    <workspaceFilter version="1.0">
        <filter root="/apps/foo"/>
        <filter root="/apps/foundation/components/bar"/>
        <filter root="/etc/designs/foo"/>
        <filter root="/content/foo"/>
        <filter root="/content/dam/foo"/>
        <filter root="/content/usergenerated/content/foo"/>
    </workspaceFilter>
    
  5. Für den Inhalt Ihres Pakets, der in zwei Projekte aufgeteilt wurde, müssen Sie diese Filterregeln ebenfalls in zwei Teile aufteilen und die filter.xml-Dateien der beiden Projekte entsprechend aktualisieren.

    1. Öffnen Sie in Eclipse PROJECT.ui.apps/src/main/content/META-INF/filter.xml.

    2. Ersetzen Sie den Inhalt des <workspaceFilter>-Elements durch die Regeln Ihres Pakets, die mit /apps und /etc beginnen.

      • Beispiel:

        <?xml version="1.0" encoding="UTF-8"?>
        <workspaceFilter version="1.0">
           <filter root="/apps/foo"/>
           <filter root="/apps/foundation/components/bar"/>
           <filter root="/etc/designs/foo"/>
        </workspaceFilter>
        
    3. Öffnen Sie dann PROJECT.ui.content/src/main/content/META-INF/filter.xml.

    4. Ersetzen Sie die Regeln durch die Ihres Pakets, die mit /content beginnen.

      • Beispiel:

        <?xml version="1.0" encoding="UTF-8"?>
        <workspaceFilter version="1.0">
           <filter root="/content/foo"/>
           <filter root="/content/dam/foo"/>
           <filter root="/content/usergenerated/content/foo"/>
        </workspaceFilter>
        
  6. Denken Sie daran, alle Änderungen zu speichern. Sie können diesen neuen Inhalt jetzt mit Ihrer AEM-Instanz synchronisieren.

  7. Stellen Sie im Bedienfeld „Server“ sicher, dass die Verbindung hergestellt wurde. Andernfalls starten Sie sie.

  8. Klicken Sie auf Bereinigen und veröffentlichen Symbol.

Nach Abschluss des Vorgangs sollte das Paket auf Ihrer Instanz ausgeführt werden und beim Speichern werden alle Änderungen automatisch mit der Instanz synchronisiert.

Wenn Sie ein Paket aus Ihrem Projekt neu erstellen möchten, klicken Sie mit der rechten Maustaste auf das PROJECT.ui.apps oder PROJECT.ui.content und wählen Ausführen als > Maven-Installation.

Jetzt verfügen Sie über einen Zielordner, der Ihr Paket enthält (z. B. mit dem Namen PROJECT.ui.apps-0.0.1-SNAPSHOT.zip).

Fehlerbehebung

Ungültige Projektdefinition beheben

Um ungültige Abhängigkeiten und Projektdefinitionen aufzulösen, gehen Sie wie folgt vor:

  1. Wählen Sie alle erstellten Projekte.
  2. Klicken Sie mit der rechten Maustaste.
  3. Wählen Sie im Kontextmenü Maven > Projekte aktualisieren.
  4. Aktivieren Sie Aktualisierungen von Snapshots/Releases erzwingen.
  5. Klicken Sie auf OK.

Eclipse lädt die erforderlichen Abhängigkeiten herunter. Das kann einen Moment dauern.

Weitere Informationen

Die offizielle Website „Apache Sling IDE tooling for Eclipse“ bietet Ihnen nützliche Informationen:

Die folgende offizielle Eclipse-Dokumentation kann dabei helfen, Ihre Umgebung einzurichten:

Auf dieser Seite