Streamlining AEM Local Development as a Cloud Service: A Step-by-Step Guide

Tommy Pang
The Constellar Digital&Technology Blog
3 min readSep 18, 2023
AEM Local Development Structure

Adobe Experience Manager (AEM) as a Cloud Service offers a robust environment for managing digital experiences. When it comes to local development, having an optimized setup is crucial for efficient workflow. In this guide, we’ll break down the steps to set up AEM as a Cloud Service for local development.

Prerequisites

Before setting up AEM locally, you need to install essential software and tools. These include:

  • Follow the development tools setup guidelines from Adobe
  • Java Development Kit (JDK): AEM requires a JDK. Download and install the appropriate version based on AEM’s compatibility guidelines.
  • Apache Maven: Maven is essential for building and managing AEM projects. Install the latest version from the official Maven website.
    For reference in case you are having difficulty setting up Maven on Windows: https://phoenixnap.com/kb/install-maven-windows
  • AEM Quickstart Jar: Obtain the AEM Quickstart Jar file from the Adobe website, ensuring it matches the version you intend to use.
    sample version: AEM SDK v2023.9.13420.20230907T185228Z-230800

Now, if only installing software were as quick as compiling “Hello World”!

Setup AEM Quickstart

Run AEM Quickstart: Open a terminal, navigate to the directory containing the AEM Quickstart Jar, and execute the command to start the AEM instance.

Time to perform the AEM Quickstart dance! 🕺

Setting up Local AEM Author Service

  • Create a folder named $HOME/aem-sdk/author.
  • Copy the Quickstart JAR from Adobe software distribution into this folder and rename it to aem-author-p4502.jar.
  • Open a terminal and navigate to the $HOME/aem-sdk/author folder.
  • Run the local AEM Author Service:
java -jar aem-author-p4502.jar

Setting up Local AEM Publish Service

  • Create a folder named $HOME/aem-sdk/publish.
  • Copy the Quickstart JAR from Adobe software distribution into this folder and rename it to aem-publish-p4503.jar.
  • Open a terminal and navigate to the $HOME/aem-sdk/publish folder.
  • Run the local AEM Publish Service:
java -jar aem-publish-p4503.jar

Enabling Prerelease Mode for AEM Services

  • For Author service in prerelease mode:
java -jar aem-author-p4502.jar -r prerelease
  • For Publish service in prerelease mode:
java -jar aem-publish-p4503.jar -r prerelease

Access AEM Authoring Environment

Open a web browser and navigate to http://localhost:4502 to access the AEM authoring environment.

Now, let’s put on our imaginary explorer hats and journey to the AEM authoring wonderland! 🚀

Access AEM Developer Environment

Welcome to the backstage of AEM — where developers don’t need a VIP pass! 😎

Set Up AEM Project Structure

Create a Maven project structure for your AEM application. Typically, this includes the following modules:

  • Core: Contains backend Java code.
  • ui.apps: Contains AEM component code and client-side resources.
  • ui.content: Defines content structures and sample content.

Think of it as building a digital sandcastle — with fewer seagulls trying to mess it up! 🏖️

Stopping the Local AEM Runtimes

To stop a local AEM runtime (Author or Publish service), open the command line used to start the runtime and simply press Ctrl-C.

Conclusion

With your AEM instance set up locally and your project deployed, you can now begin developing and testing your AEM components and features in a controlled, local environment.

Important note: The naming convention of Quickstart JAR files determines the startup mode and port number. Refer to the original blog post for details on the available permutations.

Time to put on your coding cape and be the AEM superhero you were destined to be! 🦸‍♂️

--

--