Bonita Engine
Deploy, execute, manage applications made with Bonita Studio.
Using the Engine
The engine is included as part of either Bonita Studio or Bonita Web Platform, and executes the BPMN process logic. The engine can however be included as a standalone dependency in a custom Application, as explained here
Running the Project
Prerequisites
Java JDK 1.8 (to compile), and JVM 8 or 11 (to run)
This project bundles the Gradle Wrapper, so the gradlew
script is available at the project root.
Compiling
Just run the following Gradle command:
./gradlew build
To be able to successfully build other Bonita components that use the Engine, run:
./gradlew publishToMavenLocal
Among other things, it also generates the javadoc used by Bonita Studio.
The command above runs all unit tests. To skip them, add the -x test
option.
Version
Due to the Gradle plugin com.bonitasoft.gradle.bonita-release, the version of the artifacts is automatically calculated from the last tag of the current branch.
To override the current version on build, use the parameter forceCurrentVersion like:
./gradlew -PforceCurrentVersion=7.9.3 <tasks>
Running unit / integration tests
To run all unit + integration tests (on the default embedded H2 database), run the following command:
./gradlew test integrationTest
Project Structure
The project is composed of several modules. Unit tests are contained in the modules, integration tests are regrouped in bonita-integration-tests.
bonita-engine-spring-boot-starter
: Run the engine in standalone mode using Spring boot, see documentationbonita-engine-standalone
: Run the engine in standalone programmatically, see documentationbonita-test-api
: Junit Rule to include the engine in your testsbpm
: Services related to bpm process executionbuildSrc
: Internal Gradle plugins used to build Bonita Engineplatform
: Services that handle the platform creation/configurationservices
: Generic services used by the engine
How to contribute
In order to contribute to the project, read the guide. To report an issue use the official bugtracker.