This article covers a Bloomreach Experience Manager version 13. There's an updated version available that covers our most recent release.

Create the Project

Previous: Prerequisites

Create an empty Bloomreach Experience Manager project on your file system.

Maven archetypes are templates of projects. Maven can generate a new project from such a template. To create a new project, type the command shown below. This will create a new project folder with a name equal to the chosen artifactId, containing the generated project. On Windows, run the command on a single line and leave out the line continuation characters ('\') or use '^' as continuation character.

mvn org.apache.maven.plugins:maven-archetype-plugin:2.4:generate \
-DarchetypeRepository=https://maven.bloomreach.com/repository/maven2/ \
-DarchetypeGroupId=org.onehippo.cms7 \
-DarchetypeArtifactId=hippo-project-archetype \
-DarchetypeVersion=13.4.22

Windows:

mvn org.apache.maven.plugins:maven-archetype-plugin:2.4:generate -DarchetypeRepository=https://maven.bloomreach.com/repository/maven2/ -DarchetypeGroupId=org.onehippo.cms7 -DarchetypeArtifactId=hippo-project-archetype -DarchetypeVersion=13.4.22
If you're behind a proxy, you need to use appropriate settings in your Maven configuration file. See the Maven Guide to Using Proxies on how to do that.

The Maven command above uses the latest Bloomreach Experience Manager release available to the open source community.

Bloomreach Experience Manager standard and premium licensees have access to the latest release as listed on the Release Notes Overview page. To use the latest release, make sure to configure the Bloomreach Experience Manager Maven repository and in the above Maven command, replace the the value of the -DarchetypeRepository argument with https://maven.bloomreach.com/repository/maven2-enterprise/ and the value of the -DarchetypeVersion argument with the appropriate version number.

The Bloomreach Experience Manager archetype is configured with default values for all properties required by the archetype. If you want to customize any of these property values, type 'n' when prompted for confirmation.

You can specify values for the following properties:

  • groupId - the project's Maven group ID, like 'com.mycompany'
  • artifactId - the project's main artifact ID. For the purpose of consistency, this trail uses the default value 'myproject'.
  • version number - we recommend that you use the default value. It is a Maven best practice to have '-SNAPSHOT' in the version number during development; the Maven release plugin makes use of that string. Deviate from this when your project has explicit, different requirements.
  • package name - the name of the Java package within which the code for your site application will live. A folder structure representing this package name will be generated automatically. Typically, the package name will resemble the Maven groupId.
  • project name - the (free text) name of the new project.
Do not use special characters such as dot or dash in the artifactId. Also avoid using 'cms' or 'hippo' as artifactId because these are known to cause naming conflicts. Apart from that we recommend to stick with Maven naming conventions: you can choose practically any other name you want with lowercase letters and without special characters.

Maven now creates the new project in a directory named after the value of the artifactId property you specified. The project contains 5 modules / sub-projects:

  • cms - produces the Bloomreach Experience Manager platform web application, which includes the repository, configured to use an embedded, file-based database storage.
  • cms-dependencies
  • repository-data - produces four JAR files containing resources that represent the initial content of the repository, split between application data (required for any deployment of the application), development data (only to be deployed into development environments such as local or CI deployments), site configuration, and web files.
  • site - produces a JAR file containing web application components and a WAR containing the actual Bloomreach Experience Manager site web application, which connects to the platform to render the content on a website.
  • essentials - produces the setup web application, which helps you configuring and extending your Bloomreach Experience Manager project.

Next: Build the Project

Did you find this page helpful?
How could this documentation serve you better?
On this page
    Did you find this page helpful?
    How could this documentation serve you better?