AEM Developer Tools für Eclipse

Übersicht

AEM Developer Tools for Eclipse ist ein Eclipse-Plug-in, das auf dem Eclipse-Plug-in für Apache Sling basiert, das 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-Pakete
  • Debugging-Unterstützung mit Funktionen zum Hot-Swap-Code
  • 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:

  • Laden Sie Eclipse IDE for Enterprise Java Developers herunter und installieren Sie es.
  • Konfigurieren Sie Ihre eclipse-Installation, um sicherzustellen, dass Sie über mindestens 1 Gigabyte Heap-Speicher verfügen, indem Sie die Konfigurationsdatei eclipse.ini bearbeiten, wie in der Eclipse FAQ beschrieben.
HINWEIS

Unter macOS müssen Sie mit der rechten Maustaste auf Eclipse.app klicken und dann Paketinhalt anzeigen auswählen, um Ihre eclipse.inizu finden.

Installieren der AEM Developer Tools für Eclipse

Nachdem Sie die obigen Anforderungen erfüllt haben, können Sie das Plugin wie folgt installieren:

  1. Öffnen Sie die Website AEM Developer Tools.

  2. Kopieren Sie den Installationslink.

    Beachten Sie, dass Sie alternativ ein Archiv herunterladen können, anstatt den Installationslink zu verwenden. Dies ermöglicht Offlineinstallation, aber Sie werden auf diese Weise automatische Update-Benachrichtigungen verpassen.

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

  4. Klicken Sie auf Neue Software installieren.

  5. Klicken Sie auf Hinzufügen….

  6. Geben Sie unter Name AEM Developer Tools ein.

  7. Unter Standort kopieren Sie die Installations-URL.

  8. Klicken Sie auf Hinzufügen.

  9. Überprüfen Sie AEM- und Sling-Plug-ins.

  10. Klicken Sie auf Weiter.

  11. Klicken Sie im Fenster Installationsdetails erneut auf Weiter.

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

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

Die AEM-Perspektive

In Eclipse bestimmt eine Perspektive die Aktionen und Ansichten, die in einem Fenster verfügbar sind, und ermöglicht eine Aufgabe-orientierte Interaktion mit Ressourcen in Eclipse. Weitere Informationen zur Perspektive finden Sie in der Eclipse-Dokumentation.

Die AEM Entwicklungstools für Eclipse bieten eine AEM Perspektive, mit der Sie die vollständige Kontrolle über Ihre AEM Projekte und Instanzen haben. So öffnen Sie die AEM:

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

Die AEM-Perspektive in Eclipse

Multi-Modul-Beispielprojekt

Die AEM Developer Tools for Eclipse werden mit einem Beispielprojekt mit mehreren Modulen geliefert, mit dem Sie schnell mit der Projektkonfiguration in Eclipse vertraut werden und das als Best Practice-Leitfaden für mehrere AEM-Funktionen dienen kann. Erfahren Sie mehr über den Projektarchetyp.

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

  1. Im Menü Datei > Neu > Projekt navigieren Sie zum AEM-Bereich und wählen Sie AEM Beispiel-Multi-Modul Projekt.

    AEM Beispiel für ein Multi-Module-Projekt

  2. Klicken Sie auf Weiter.

    HINWEIS

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

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

    Archetyp-Version auswählen

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

    • Name
    • Gruppen-ID
    • Artefakt-ID
    • appId : Sie müssen die ​erweiterten Optionen erweitern, um diesen Wert festzulegen.
    • appTitle - Möglicherweise müssen Sie die erweiterten ​Optionen erweitern, um diesen Wert festzulegen.
    • Paket : Sie müssen die erweiterten ​Optionen erweitern, um diesen Wert festzulegen.

    Definieren von Archetypeigenschaften

  5. Klicken Sie auf Weiter.

  6. Anschließend konfigurieren Sie einen AEM Server, zu dem Eclipse eine Verbindung herstellen soll.

    Um die Debugger-Funktion verwenden zu können, müssen Sie AEM im Debug-Modus gestartet haben, was z. B. durch Hinzufügen der folgenden Informationen zur Befehlszeile erreicht werden kann:

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

    Verbindung mit AEM Server

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

    HINWEIS

    Bei einer Neuinstallation (genauer gesagt, wenn keine Abhängigkeiten heruntergeladen wurden) wird das Projekt möglicherweise mit Fehlern erstellt. In diesem Fall folgen Sie den Anweisungen unter Ungültige Projektdefinition beheben.

Anleitung zum Importieren vorhandener Projekte

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

  1. Befolgen Sie die Anweisungen, um ein Beispiel-Multi-Module-Projekt zu erstellen. Anschließend werden die folgenden Projekte für Sie erstellt, die eine gesunde Trennung der Bedenken ermöglichen:

    • PROJECT.ui.apps für /apps und /etc Inhalte
    • PROJECT.ui.content für /content die
    • PROJECT.core für Java-Pakete (diese werden interessant, 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. Blenden Sie im ProjektExplorer-Bedienfeld PROJECT.ui.apps > src > main > content > jcr_root > apps aus.
    2. Klicken Sie mit der rechten Maustaste auf den Ordner apps und wählen Sie Anzeigen in > System Explorer.
    3. Löschen Sie die Ordner apps und etc, die jetzt angezeigt werden sollen, und platzieren Sie hier die Ordner apps und etc Ihres Inhaltspakets.
    4. Klicken Sie in Eclipse mit der rechten Maustaste auf das Projekt PROJECT.ui.apps und wählen Sie Aktualisieren.
  3. Führen Sie dann dasselbe für PROJECT.ui.content aus und ersetzen Sie den Inhaltsordner durch das Paket:

    1. Blenden Sie im ProjektExplorer-Bedienfeld PROJECT.ui.content > src > main > content > jcr_root > content aus.
    2. Klicken Sie mit der rechten Maustaste auf den Ordner für den tieferen Inhalt und wählen Sie Anzeigen in -> System Explorer.
    3. Löschen Sie den Inhaltsordner, den Sie jetzt sehen sollten, und platzieren Sie hier den Inhaltsordner Ihres Inhaltspakets.
    4. Klicken Sie in Eclipse mit der rechten Maustaste auf das Projekt PROJECT.ui.content und wählen Sie Aktualisieren.
  4. Jetzt müssen Sie die filter.xml Dateien dieser beiden Projekte aktualisieren, um dem Inhalt Ihres Inhaltspakets zu entsprechen. Öffnen Sie dazu die Datei META-INF/vault/filter.xml Ihres Inhaltspakets in einem separaten Text-/Code-Editor.

    • Dies ist ein Beispiel dafür, wie Ihre filter.xml-Datei aussehen 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. Was den Inhalt Ihres Pakets betrifft, das in zwei Projekte aufgeteilt wurde, müssen Sie diese Filterregeln auch in zwei unterteilen 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, das durch /apps und /etc Beginn wird.

      • 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 Regeln Ihres Pakets, das mit /content Beginn wird.

      • 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. Achten Sie darauf, alle Änderungen zu speichern. Sie können diesen neuen Inhalt jetzt mit Ihrer AEM synchronisieren.

  7. Stellen Sie im Bedienfeld "Server"sicher, dass die Verbindung gestartet wurde und falls nicht, dass sie Beginn wird.

  8. Klicken Sie auf das Symbol Clean and Publish.

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 PROJECT.ui.apps oder PROJECT.ui.content und wählen Sie Ausführen als -> Maven Install.

Sie haben jetzt einen Zielgruppe-Ordner, der mit Ihrem Paket erstellt wurde (genannt z.B. 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. Kicken 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 könnte 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