Activiti is a light-weight workflow and Business Process Management (BPM) Platform targeted at business people, developers and system admins. Its core is a super-fast and rock-solid BPMN 2 process engine for Java. It's open-source and distributed under the Apache license. Activiti runs in any Java application, on a server, on a cluster or in the cloud. It integrates perfectly with Spring, it is extremely lightweight and based on simple concepts.
Homepage: http://activiti.org
Activiti is a light-weight workflow and Business Process Management (BPM) Platform targeted at business people, developers and system admins. Its core is a super-fast and rock-solid BPMN 2 process engine for Java. It’s open-source and distributed under the Apache license. Activiti runs in any Java application, on a server, on a cluster or in the cloud. It integrates perfectly with Spring, it is extremely lightweight and based on simple concepts.
**NOTE: We moved to the master branch all the content of the development branch that we were using to design and code the next major version of the project. If you want to contribute with version 6.x please look at the 6.x branch.**
If you want to read more about our Repositories structure you can read our GitBook.
Force language level 21, to fail-fast when (accidentally) using features available only in newer Java versions.
21 ...
Avoid that changes in some resources are ignored in the next run/debug (and you are forced to use mvn)
!?*.java
(remove other content)Avoid a StackOverflowError
when building
-J-Xss1024k
Recommended code style: use the Google Java Style Guide with editorconfig
.editorconfig
what has definition for indents, file encoding, line endings.Set manually the correct file encoding (UTF-8 except for properties files) and end-of-line characters (unix):
Unix
UTF-8
ISO-8859-1
ISO-8859-1
as specified by the java ResourceBundle
contract.Set manually the correct number of spaces when pressing tab:
off
4
4
8
off
2
2
4
Set the correct file headers (do not include @author or a meaningless javadoc):
File Header
@author
lines in source files, see FAQ below.Set the correct license header
Alfresco Software
Why do you not accept @author
lines in your source code?
Because the author tags in the java files are a maintenance nightmare
Because the author tags promote code ownership, which is bad in the long run.
Credit to the authors is given:
To format files with the required license:
mvn license:format
To check if your code style respect all the rules:
mvn checkstyle:check -DskipCheckstyle=false
To generate the maven site:
mvn clean site site:stage
the site will be generated at: target/staging/index.html
Running on GH Actions.
For Dependabot PRs to be validated by CI, the label “CI” should be added to the PR.
Requires the following secrets to be set:
Name | Description |
---|---|
BOT_GITHUB_TOKEN | Token to launch other builds on GH |
BOT_GITHUB_USERNAME | Username to issue propagation PRs |
NEXUS_USERNAME | Internal Maven repository username |
NEXUS_PASSWORD | Internal Maven repository password |
SLACK_NOTIFICATION_BOT_TOKEN | Token to notify slack on failure |