OptaPlanner workbench: OptaPlanner extensions to the KIE Workbench
Latest commit d7f4f44 Jan 13, 2017 @ge0ffrey ge0ffrey committed with csadilek PLANNER-721 Replace Score.valueOf with valueOfUninitialized + add Har…
…dMediumSoftBigDecimalScoreMapper (#129)

* PLANNER-721 Replace valueOf with valueOfUninitialized

* add HardMediumSoftBigDecimalScoreMapper

* fix HardMediumSoftBigDecimalScoreMapper

* fix HardMediumSoftBigDecimalScoreMapper better


Build Status

Quick development start

To build and run from source:

$ mvn clean install -DskipTests
$ cd optaplanner-wb-webapp
$ mvn clean gwt:run

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: GWT configuration

  • Module: optaplanner-wb-webapp

  • User Super Dev mode: yes

  • GWT Modules to load: All (only 1 option, default)

  • VM options: -Xmx4G -Xms1G -Xss1M -XX:CompileThreshold=7000 -Derrai.jboss.home=/…​/optaplanner-wb/optaplanner-wb-webapp/target/wildfly-10.0.0.Final/ -Dorg.uberfire.nio.git.dir=/…​/optaplanner-wb/local/data (replace /…​/optaplanner-wb/ with your clone directory path twice)

  • Dev Mode parameters: -server org.jboss.errai.cdi.server.gwt.EmbeddedWildFlyLauncher

  • Environment variables: (none, default)

  • Start page: optaplanner-wb.html (default)

Advanced development start

Add the upstream wb projects too, because you might want to make changes on those too:

  • Git clone: guvnor, kie-wb-common, drools-wb too (besides optaplanner-wb)

  • Import them all in the same IntelliJ project

  • Make sure to use Maven → Reimport All Maven Projects and Maven → Generate Sources and Update Folders for All Projects to update module dependencies

  • Configure a GWT configuration as mentioned above.

    • It is likely crash with Too many open files in IntelliJ on linux.

      • Use this to fix that:

        $ sudo echo "fs.inotify.max_user_watches = 8388608" >> /etc/sysctl.conf
        $ sudo echo "fs.inotify.max_user_instances = 8388608" >> /etc/sysctl.conf
        $ sudo sysctl -p
        ... (no errors)
        $ ulimit -n
        $ sudo echo "*       	soft    nofile  102400" >> /etc/security/limits.conf
        $ sudo echo "*       	hard    nofile  102400" >> /etc/security/limits.conf
        $ sudo reboot
        $ ulimit -n

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.