AEM-Projektarchetyp

Der AEM-Projektarchetyp ist eine Maven-Vorlage, anhand derer ein minimales, auf Best Practices basierendes Adobe Experience Manager (AEM)-Projekt als Ausgangspunkt für Ihre Website erstellt wird.

TIPP

Der neueste AEM-Projektarchetyp ist auf GitHub zu finden.

Ressourcen

  • Dokumentation zum Archetyp (dieses Dokument): Überblick über die Architektur des Archetyps und die verschiedenen Module.
  • Die folgenden Tutorials basieren auf diesem Archetyp:
    • WKND-Site: Erfahren Sie, wie eine neue Website beginnen.
    • WKND Single Page App: Erfahren Sie, wie Sie eine Web-App für React oder Angular erstellen, die vollständig in AEM erstellt werden kann.

Funktionen

Nutzung

Passen Sie die folgende Befehlszeile an Ihre Anforderungen an, um ein Projekt zu erstellen:

mvn -B org.apache.maven.plugins:maven-archetype-plugin:3.2.1:generate \
 -D archetypeGroupId=com.adobe.aem \
 -D archetypeArtifactId=aem-project-archetype \
 -D archetypeVersion=XX \
 -D appTitle="My Site" \
 -D appId="mysite" \
 -D groupId="com.mysite" \
  • Ersetzen Sie XX durch die neueste Archetyp-Versionsnummer.
  • Legen Sie aemVersion=cloud für AEM as a Cloud Service fest.
    Legen Sie aemVersion=6.5.0 für Adobe Managed Services oder On-Premise fest.
    Die Abhängigkeit der Kernkomponenten wird nur für AEM-Versionen ohne Cloud Service hinzugefügt, da die Kernkomponenten für AEM as a Cloud Service standardmäßig bereitgestellt werden.
  • Passen Sie appTitle="My Site" an, um den Titel der Website und die Komponentengruppen festzulegen.
  • Passen Sie appId="mysite" an, um die Maven-Artefakt-ID (artifactId), die Namen der Komponenten-, Konfigurations- und Inhaltsordner sowie die Namen der Client-Bibliotheken festzulegen.
  • Passen Sie groupId="com.mysite" an, um die Maven-Gruppen-ID (groupId) und das Java-Quellpaket festzulegen.
  • Durchsuchen Sie die Liste der verfügbaren Eigenschaften, um festzustellen, ob Sie weitere anpassen möchten.

Verfügbare Eigenschaften

Name Standard Beschreibung
appTitle Der Titel der App; wird für den Titel der Website und die Komponentengruppen verwendet (z. B. "My Site").
appId Technischer Name; wird für Komponenten-, Konfigurations- und Inhaltsordnernamen sowie die Namen der Client-Bibliotheken verwendet (z. B. "mysite").
artifactId ${appId} Maven-Basisartefakt-ID (z. B. "mysite").
groupId Maven-Basisgruppen-ID (z. B. "com.mysite"). Dieser Wert muss ein gültiger Java-Paketname sein.
package ${groupId} Java-Quellpaket (z. B. "com.mysite").
version 1.0-SNAPSHOT Projektversion (z. B. 1.0-SNAPSHOT).
aemVersion cloud Ziel-AEM-Version (kann cloud für AEM as a Cloud Service sein; oder 6.5.0 oder 6.4.4 für Adobe Managed Services oder On-Premise).
sdkVersion latest Wenn aemVersion=cloud, dann kann eine SDK-Version angegeben werden (z. B. 2020.02.2265.20200217T222518Z-200130).
includeDispatcherConfig y Enthält eine Dispatcher-Konfiguration für Cloud oder für AMS/On-Premise, je nach dem Wert von aemVersion (kann y oder n sein).
frontendModule general Enthält ein WebPack-Frontend-Build-Modul, das die Client-Bibliotheken generiert (kann general oder none für reguläre Websites sein; kann angular oder react für eine Single Page App sein, die den SPA-Editor implementiert).
language en Sprachcode (ISO 639-1) zur Erstellung der Inhaltsstruktur (z. B. aus en, deu).
country us Ländercode (ISO 3166-1) zur Erstellung der Inhaltsstruktur (z. B. aus US).
singleCountry y Enthält eine Inhaltsstruktur für den Sprach-Master (kann y oder n sein).
includeExamples n Enthält eine Beispiel-Website für die Komponentenbibliothek (kann y oder n sein).
includeErrorHandler n Enthält eine benutzerdefinierte 404-Antwortseite, die für die gesamte Instanz global ist (kann y oder n sein).
includeCommerce n Enthält CIF-Kernkomponenten-Abhängigkeiten und generiert entsprechende Artefakte.
commerceEndpoint Nur für CIF erforderlich. Optionaler Endpunkt des zu verwendenden GraphQL-Service (z. B. https://hostname.com/grapql).
includeFormscommunications n Enthält Abhängigkeiten, Vorlagen, Formulardatenmodelle und Designs für Forms-Kernkomponenten und generiert entsprechende Artefakte für Forms-Kommunikations-Programme.
includeFormsenrollment n Enthält Abhängigkeiten, Vorlagen, Formulardatenmodelle und Designs für Forms-Kernkomponenten und generiert entsprechende Artefakte für Forms-Registrierungs-Programme.
sdkFormsVersion latest Wenn aemVersion=cloud und eines von includeFormsenrollment=y oder includeFormscommunications=y, kann eine Forms SDK-Version angegeben werden (z. B. 2020.12.17.02).
datalayer y Aktivieren Sie die Integration mit der Adobe Client-Datenschicht.
amp n Aktivieren Sie AMP-Unterstützung für erstellte Projektvorlagen.
enableDynamicMedia n Aktiviert die Foundation-Komponenten von Dynamic Media in den Einstellungen der Projektrichtlinien und aktiviert Dynamic Media-Funktionen in der Richtlinie der Kernbildkomponente.
enableSSR n Option zum Aktivieren von SSR für das Frontend-Projekt
precompiledScripts n Option zum Vorkompilieren der Server-seitigen Skripte von ui.apps und Anfügen dieser Skripte an den Build als sekundäres Paket-Artefakt im ui.apps-Projekt. aemVersion sollte auf cloud gesetzt werden.
includeFormsheadless n Enthält Abhängigkeiten von Forms-Kernkomponenten, ui.frontend.react.forms.af und Headless-Artefakte.

Systemanforderungen

Archetyp AEM as a Cloud Service AEM 6.5 Java SE Maven
43 Kontinuierlich 6.5.7.0+ 8, 11 3.3.9+

Richten Sie Ihre lokale Entwicklungsumgebung für das AEM as a Cloud Service-SDK oder ältere Versionen von AEM ein.

Bekannte Probleme

Bei Ausführung unter Windows und Generierung der Dispatcher-Konfiguration sollte die Ausführung in einer Eingabeaufforderung mit erhöhten Rechten oder im Windows-Subsystem für Linux erfolgen (siehe Nr. 329).

Wenn Sie den Archetyp im interaktiven Modus (ohne den Parameter -B) ausführen, können die Eigenschaften mit Standardwerten nicht geändert werden, es sei denn, die endgültige Bestätigung wird verworfen, wodurch die Fragen wiederholt und die Eigenschaften mit Standardwerten in die Fragen aufgenommen werden (Details siehe
ARCHETYPE-308).

Sie können diesen Archetyp nicht in Eclipse verwenden, wenn Sie ein neues Projekt mit File -> New -> Maven Project starten, da das Post-Generation-Skript archetype-post-generate.groovy aufgrund eines Problems mit Eclipse nicht ausgeführt wird. Die Lösung besteht darin, die oben genannte Befehlszeile zu verwenden und dann in Eclipse File -> Import -> Existing Maven Project zu verwenden.

Weiterführende Literatur

Weitere Informationen zur Verwendung des Archetyps, einschließlich der Vorteile, Optionen und der Funktionsweise der Module, finden Sie im Dokument Verwenden des Archetyps.

Auf dieser Seite