AEM プロジェクトアーキタイプ

AEM プロジェクトアーキタイプは、Web サイトの出発点として、ベストプラクティスに基づいた最小限の Adobe Experience Manager(AEM)プロジェクトを作成する Maven テンプレートです。

ヒント

最新の AEM プロジェクトアーキタイプは GitHub で入手できます

リソース

  • アーキタイプのドキュメント(本ドキュメント):​アーキタイプアーキテクチャとその様々なモジュールの概要です。
  • 次のチュートリアルは、このアーキタイプに基づいています。

機能

  • ベストプラクティス:​アドビの最新の推奨プラクティスをすべて活用して、サイトをブートストラップできます。
  • ローコード(低コード):​テンプレートの編集、コンテンツの作成、CSS のデプロイをおこなうと、サイトの運用開始準備が整います。
  • クラウド対応:​必要に応じて、AEM as a Cloud Service を使用して、数日以内に運用を開始でき、スケーラビリティとメンテナンスの向上を図れます。
  • Dispatcher:​プロジェクトには、速度とセキュリティを確実に達成できる Dispatcher 設定が必要です。
  • マルチサイト:​必要に応じて、マルチ言語およびマルチリージョンセットアップ用のコンテンツ構造がアーキタイプから生成されます。
  • コアコンポーネント:​作成者は、アドビの汎用の標準コンポーネントセットを使用して、ほぼどのようなレイアウトでも作成できます。
  • 編集可能なテンプレート:​ほとんどすべてのテンプレートをコードなしで組み立てることができ、作成者による編集が可能な範囲を定義できます。
  • レスポンシブレイアウト:​テンプレートまたは個々のページで、定義されたブレークポイントについて要素がどのようにリフローするかを定義できます。
  • ヘッダーとフッター:コンポーネントのローカライゼーション機能を使用して、コードなしで組み立ててローカライズできます。
  • スタイルシステム:​作成者が様々なスタイルを適用できるようにすることで、カスタムコンポーネントを作成しないようにすることができます。
  • フロントエンドビルド:​フロントエンド開発者は、AEM ページのモックを作成し、Webpack、TypeScript、SASS を使用してクライアントライブラリをビルドすることができます。
  • Web アプリ対応:React または Angular を使用するサイトの場合は、SPA SDK を使用して、アプリのコンテキスト内オーサリングを維持できます。
  • コマースに対応:AEM コマースMagento などのコマースソリューションと統合するプロジェクトの場合は、コマースコアコンポーネントを使用します。
  • コード例: HelloWorld コンポーネントのほか、サンプルのモデル、サーブレット、フィルター、スケジューラーをチェックアウトできます。
  • オープンソース:​何か問題がある場合は、改善案を寄稿できます。

使用方法

プロジェクトを生成する場合は、次のコマンドラインを必要に応じて調整します。

mvn -B archetype:generate \
 -D archetypeGroupId=com.adobe.aem \
 -D archetypeArtifactId=aem-project-archetype \
 -D archetypeVersion=27 \
 -D appTitle="My Site" \
 -D appId="mysite" \
 -D groupId="com.mysite" \
  • AEM as a Cloud Service の場合は、aemVersion=cloud と設定します。
    Adobe Managed Services またはオンプレミスの場合は、aemVersion=6.5.0 と設定します。
    AEM as a Cloud Service の場合はコアコンポーネントがすぐに使用できる形で提供されているので、コアコンポーネントの依存関係は、非クラウドバージョンの AEM の場合にのみ追加します。
  • appTitle="My Site" を調整して、Web サイトのタイトルやコンポーネントグループを定義します。
  • appId="mysite" を調整して、Maven アーティファクト ID、コンポーネントフォルダー名、設定フォルダー名、コンテンツフォルダー名、およびクライアントライブラリ名を定義します。
  • groupId="com.mysite" を調整して、Maven グループ ID と Java ソースパッケージを定義します。
  • 使用可能なプロパティのリストを調べて、調整が必要なプロパティが他にあるかどうかを確認します。

使用可能なプロパティ

名前 デフォルト値は 説明
appTitle アプリケーションのタイトル。Web サイトのタイトルやコンポーネントグループに使用されます(例:"My Site")。
appId 技術的な名前。コンポーネント、設定、コンテンツのフォルダー名やクライアントライブラリ名に使用されます(例:"mysite")。
artifactId ${appId} 基本 Maven アーティファクト ID です(例:"mysite")。
groupId 基本 Maven グループ ID です(例:"com.mysite")。
package ${groupId} Java ソースパッケージです(例:"com.mysite")。
version 1.0-SNAPSHOT プロジェクトのバージョンです(例:1.0-SNAPSHOT)。
aemVersion cloud ターゲット AEM バージョンです(AEM as a Cloud Service の場合は cloudAdobe Managed Services またはオンプレミスの場合は、6.5.06.4.4 のいずれか)。
sdkVersion latest aemVersion=cloud の場合は、SDK のバージョンを指定できます(例:2020.02.2265.20200217T222518Z-200130)。
includeDispatcherConfig y aemVersion の値に応じて、クラウドか AMS/オンプレミスのいずれかの Dispatcher 設定を組み込みます(y または n)。
frontendModule general クライアントライブラリを生成する Webpack フロントエンドビルドモジュールを組み込みます(通常のサイトの場合は general または noneSPA エディターを実装しているシングルページアプリの場合は angular または react)。
language en コンテンツ構造の作成に使用する言語コード(ISO 639-1)(例:endeu)。
country us コンテンツ構造の作成に使用する国コード(ISO 3166-1)(例:US)。
singleCountry y 言語マスターコンテンツ構造を組み込みます(y または n)。
includeExamples n コンポーネントライブラリのサンプルサイトを組み込みます(y または n)。
includeErrorHandler n インスタンス全体でグローバルに使用されるカスタムの 404 応答ページを組み込みます(y または n)。
includeCommerce n CIF コアコンポーネントの依存関係を含み、対応するアーティファクトを生成します。
commerceEndpoint CIF でのみ必須です。使用するコマースシステム GraphQL サービスのオプションのエンドポイント(例:https://hostname.com/grapql)をクリックします。
datalayer y Adobe クライアントデータレイヤーとの統合をアクティブ化します。
amp n 生成されたプロジェクトテンプレートに対して AMP のサポートを有効にします。

システム要件

アーキタイプ AEM as a Cloud Service AEM 6.5 AEM 6.4 Java SE Maven
26 継続的 6.5.5.0+ 6.4.8.1+ 8、11 3.3.9 以上

AEM as a Cloud Service SDK または旧バージョンの AEM のローカル開発環境をセットアップします。

既知の問題

Windows 上で実行して Dispatcher 設定を生成する場合は、管理者権限のコマンドプロンプトまたは Windows Subsystem for Linux から実行する必要があります(問題 329 を参照)。

-B パラメーターを指定せずに)インタラクティブモードでアーキタイプを実行する際は、最終確認が却下された場合を除き、デフォルト値を持つプロパティは変更できません。その場合は、デフォルト値を持つプロパティを含めることで質問が繰り返し表示されます(詳しくは ARCHETYPE-308 を参照してください)。

参考情報

利点、オプション、モジュールの動作など、アーキタイプの使用について詳しくは、アーキタイプの使用を参照してください。

このページ