Child pages
  • Building OpenIDM from Source Code
Skip to end of metadata
Go to start of metadata

Working with the OpenIDM Project

This page contains information required to obtain and build the source code for the project. You may want to do this if you want to modify the code, debug behaviour or just look at the source. If you just want to try OpenIDM, it will be easier for you to head over to Backstage and download the ForgeRock produced enterprise release binaries. 

Build Environment

The environment you need to set up is dependent upon the version of OpenIDM that you want to build. To build OpenIDM you will need the following installed on the machine you're going to build on;

OpenIDMJava JDK VersionMavenGit
3.0.0, 3.1.0, 4.0.0 & Latest7 and above3.0 and above1.7.6 or above
2.1.06 and above2.4 and above1.7.6 or above

You should also set the following environment variables for the majority of versions;

JAVA_HOME - set to the directory in which your SDK is installed
M2_HOME - set to the directory in which maven in installed.
M2 - set to the bin directory in which the maven executable is found.
MAVEN_OPTS  - set to '-Xmx1g -XX:MaxPermSize=512m'

Getting the Code

To browse the project, commits and source, login to the Stash server using your ForgeRock Backstage Username (not email address!) and Password.

ForgeRock's Stash server is here;

If you want to work with the code in a read only manner, i.e. you just want to build code, you don't want to modify the code and contribute your changes back to the project, then you can clone the above repository directly;

git clone

Git will ask you for your backstage username (not email address!) and password and clone the repository to your machine.

Building the Code

The code is built using Maven. You'll need to specify a username and password for forgerock-staging-repository and forgerock-plugins-repository in your Maven settings.xml.

Building the Latest Code ( master branch )

$ cd $REPO_HOME/openidm-public
$ git checkout master
$ mvn clean install

Building the Enterprise Releases

The enterprise releases are marked in the OpenIDM repository as tags. The process is similar to building the master branch ( the latest code ) but you will need to create a branch from the tag first. This is done using the -b option when doing the checkout as can be seen below;

$ cd $REPO_HOME/openidm-public 
$ git checkout -b releases/4.0.0 4.0.0 
$ mvn clean install

That code checks out the tag 4.0.0 into the releases/4.0.0 branch. Other tags may be treated in the same way. Adding '-Pcommercial-build' to the mvn clean install command will minify the UI and is used to produce the binaries you can find on Backstage.

  • No labels


  1. Unknown User (csanchezaustin)

    Something's missing from these instructions. There's an open thread on building OpenIDM in Backstage @ Net: the migration module doesn't build following these instructions and as a result, the build fails.