Java planning engine: OptaPlanner optimizes business resource scheduling and planning.
Java JavaScript FreeMarker Other


Build Status

Quick development start

To build and run from source:

$ mvn clean install -DskipTests
$ cd optaplanner-examples
$ mvn exec:java

To develop with IntelliJ IDEA, Eclipse or NetBeans, open the root pom.xml as a new project and configure a Run/Debug configuration like this:

  • Type: Application

  • Main class:

  • VM options: -Xmx2G -server (memory only needed when using the big datasets in the examples)

  • Program arguments: (none)

  • Working directory: $MODULE_DIR$ (must resolve to optaplanner-examples directory)

  • Use classpath of module: optaplanner-examples

Starter issues

If you’re just starting out with OptaPlanner and want to contribute, take a look at our starter issues. They’re specifically chosen to be easier for first time contributors.

To view a complete list of them, go to OptaPlanner’s JIRA issue tracker, click the 'Advanced' search link in the top right and paste this query:

project = PLANNER AND status in (Open, Reopened) AND labels = starter

Developing Drools, OptaPlanner and jBPM

If you want to build or contribute to a droolsjbpm project, read this document.

It will save you and us a lot of time by setting up your development environment correctly. It solves all known pitfalls that can disrupt your development. It also describes all guidelines, tips and tricks. If you want your pull requests (or patches) to be merged into master, please respect those guidelines.