Starting with version 3.2.0, the fully function platform is once again available as open source. These are the instructions to build 3.2.x and 4.0.x.
These instructions apply to all platforms. The examples here are for a Unix based system like Linux. Similar instructions apply to Windows and other platforms though different tools may be required. These build instructions assume an Oracle 8 JDK or later, though the platform performs equally well with an equivalent version of OpenJDK.
The Marketcetera Automated Platform requires a database system. The development environment is designed so that each developer can specify his or her own database coordinates without modifying the source code. The settings are established in the Maven
Prepare your environment: create or edit your Maven
settings.xml file. In Unix environments, this file will be at
In order to run the application from the development environment, you must provide two things in
- Provide a unique name for
metc.exsim.qf.sender.comp.id- anything will do. I've used <name>-<project>-<machine> here, but you can use anything you want.
- Provide a database environment. I've included the blocks for Derby, Postgres, MySQL, and Oracle here. Postgres is uncommented here, the rest are disabled by comments. You must set up the database and the user/password, which is not covered in this document.
Install the tools
- Maven 3
- Java SE JDK 8
- Subversion Client (command-line or UI-based, like TortoiseSvn)
- IDE (Eclipse, Intellij, Netbeans, Emacs, etc)
From here, prepare the environment as necessary for your IDE. For Eclipse:
Other IDEs may have similar setup procedures.
- Set your workspace to marketcetera/workspaces/trunk3
- Import projects (File->Import->General->Existing Projects into Workspace). Set the root directory to your top level code directory (marketcetera/workspaces/trunk3/code/public). Check Search for nested projects and select Finish. A popup may appear right away that says "build error". Just close this and ignore it. The code should build cleanly at this point.
From here, run the unit tests to make sure your environment is set up properly. Some of the integration tests require the database you set up to succeed. Some of the more common problems with database access are using the proper JDBC library and granting access privileges.
The instructions for building the UI client, Photon, are separate from this document.