Building dcm4chee

Build Requirements

In order to build the components of the dcm4chee archive application you will need to download and install:

In addition, you'll need the dcm4chee source code. In order to create the dcm4chee source directories, check out dcm4jboss-all from SVN:

svn co dcm4che14
svn co dcm4chee-arr
svn co dcm4chee-audit
svn co dcm4chee-docstore
svn co dcm4chee-xds-infoset
svn co dcm4chee-arc3-entities
svn co dcm4chee-icons
svn co dcm4chee-web-common
svn co dcm4chee-dashboard
svn co dcm4chee-usr
svn co dcm4chee-cleanup
svn co dcm4chee-web
svn co dcm4jboss-all

Following instructions are for building binary distribution package for your appropriate database. Replace <database> string by your database name.
Supported <database> arguments:
db2, firebird, hsql, mssql, mysql, oracle, psql

Build Dcm4che14

cd to the dcm4che14 checkout directory
Note: It works with Java 6 and lower only. It doesn't work with Java 7 - for details see

Build Dcm4chee-arr

cd to the dcm4chee-arr checkout directory
mvn install -Ddb=<database>

Build Dcm4chee-audit

cd to the dcm4chee-audit checkout directory
mvn install

Build Dcm4chee-docstore

cd to the dcm4chee-docstore checkout directory
mvn install

Build Dcm4chee-xds-infoset

cd to the dcm4chee-xds-infoset checkout directory
mvn install

Build Dcm4chee-web

(You will need to have 5 following checked out projects at the same folder level like dcm4chee-web: dcm4chee-arc3-entities, dcm4chee-icons, dcm4chee-web-common, dcm4chee-dashboard, dcm4chee-usr.)

cd to the dcm4chee-web checkout directory
mvn -Pall -Ddb=<database> install

Build Instructions

Create an environment variable pointing to the Ant home directory (ANT_HOME) and add the $ANT_HOME/bin directory to your PATH.

The build scripts dcm4jboss-all/dcm4jboss-xxx/build.xml assumes following locations of XDoclet, JBoss, Apache FOP, Jakarta Cactus and dcm4che14 (but check for updated version numbers):












3rd Party Dependency Paths

Each of the dcm4chee projects contains a file called in its root directory. These files contain the paths to dependencies to third party libraries that the projects need in order to compile. Copy each file to in the same directory. Edit these files and put in the necessary path information so that the compilation process can find the dependencies. The build scripts will automatically look for the files.

Alternatively, you may combine all of the entries into a single file in the root dcm4jboss-all directory in order to avoid editing so many files.

Castor is a commercial SDK that that is not readily downloadable. If you are not going to use the Castor HSM module, you will need to remove the code and deployment descriptors for that module before compiling.

TODO:  HSM plugins should be broken up into separate, optional modules. 

Change to the working build directory:

cd dcm4jboss-all/dcm4jboss-build

and invoke:

ant <database>-dist

to build all components and pack them in binary distribution package: