Running the source code locally

Hi, I am supposed to download the source code of camunda bpm platform and run it locally on an ide.
I tried doing so but am encountering errors and I am unable to understand how to execute successfully. I am new with camunda. Can anyone explain step by step how I can run it?

Hello @Deadeye and welcome to the community,

You can start from here: camunda-bpm-platform/CONTRIBUTING.md at master · camunda/camunda-bpm-platform · GitHub

1 Like

Hi,
I tried this but on building it is showing error ‘Failed to execute goal org.apace.maven.plaugins:maven-surefire-plugin:2.22.2:test’

Please check which JDK version you use. As of today the source code is still compatible with JDK 8.

I advise you to avoid adding all submodules to your IDE but start only with a few to explore the project (many of the submodules might not be relevant to you).

If you like further assistance, could you please exact steps that you performed (cloning projects, importing which projects, JDK and maven version, maven settings file, stacktrace of the error, etc.)

I was interested in debugging to know which sp(table) is called for saving the workflow payload request or are there any jav extensions to write payload to different sql table. Then, modify the source code to fetch payload from new secondary table based on reference id as input of workflow.
Can you help with which sub-project should I access.

Also, I am using jdk-20(20.0.1) and maven 3.9.2

I added the code given in contributing.md under build from source in the nexus-settings.xml file in the settings/maven folder. Then, I ran mvn clean install on cmd in the camunda-bpm-platform-master directory. Running mvn with -e for stacktrace of error shows org.apache.maven.lifecycle.NoGoalSpecifedException.

Any help is appreciated. Thanks in advance.

Hi @Deadeye,

the persistence in Camunda 7 is done with the myBatis framework and the objects are defined here: camunda-bpm-platform/engine/src/main/java/org/camunda/bpm/engine/impl/persistence/entity at master · camunda/camunda-bpm-platform · GitHub.

Other database related code is here: camunda-bpm-platform/engine/src/main/java/org/camunda/bpm/engine/impl/db at master · camunda/camunda-bpm-platform · GitHub.

Maybe there are even more classes involved.

Hope the helps, Ingo

Please note that JDK 17 is the latest version supported by the Camunda 7. (1)
We build and test with Maven 3.8.

(1): Supported Environments | docs.camunda.org

Hi, now I am using java version 17.0.7 and maven version 3.8.8. I have copied the code into nexus-settings.xml as given in Contributing.md, but I am still not able to build successfully the project. I ran the command mvn clean install in camunda-bpm-platform-master directory. I am getting the same error as before.

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:test (default-test) on project camunda-engine-rest-core: There are test failures.
[ERROR]
[ERROR] Please refer to C:\Users\Sundaram.Srivastava\Downloads\camunda-bpm-platform-master\engine-rest\engine-rest\target\surefire-reports for the individual test results.
[ERROR] Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.
[ERROR] → [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] MojoFailureException - Apache Maven - Apache Software Foundation
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn -rf :camunda-engine-rest-core

Could you please share which are the failing tests?
Also could you try the maven execution without tests execution if you are not interested in them:
mvn clean install -DskipTests

I did try running mvn clean install -DskipTests previously
I am getting this on this command

I have also tried mvn clean package but not able to get successful build.

Can you tell me if I am doing something wrong?

Hi, I kindly request your assistance in resolving the issue. I still have not been able to build the source code.
If anyone from the community has been able to build it, what are the right steps to follow?
Any help would be appreciated.

Hi,

You can skip the modules requiring NodeJS with the following argument:
-pl '!webapps,!webapps/assembly,!webapps/assembly-jakarta,!org.camunda.bpm.run:camunda-bpm-run-modules-swaggerui'
In case you still face issues, please attach the complete output of the build.

I am getting the same issue. Were you able to figure it out?

Hi @prajwol123,

Please share the output of the maven execution, along with which Java and Maven versions do you use.

I am executing this command:
mvn clean install -DskipITs -pl ‘!webapps,!org.camunda.bpm.run:camunda-bpm-run-modules-swaggerui’

Java version- 17
Maven version- 3.9.4

Issue: Many unit tests are failing in engine module -
Few tests that are failing are- CompetingHistoryCleanupAcquisitionTest.testAcquiringEverLivingJobSucceeds
HistoryCleanupSchedulerActivityInstancesTest.shouldScheduleToLater
ProcessEngineBootstrapRule.shouldScheduleToLater
HistoryCleanupSchedulerAuthorizationsTest.shouldScheduleToLater

And many more. However, it all throws the same error related to comparing time. Do these tests work for you?

Thank You.

Hi @prajwol123,

Maven version- 3.9.4

Please use Maven version 3.8, as we already noticed issues and inconsistencies when 3.9 version is used.

The tests are working for me and also are running successfully on a daily bases on our CI. We are aware of one issue in the test executions related to the time zone. I would assume you stumbled upon that issue if the failure is related to comparing time. We are always open for contributions if you are interested in fixing this issue.

Here are the options that I would consider:

  • Disable the tests if you are not interested in running them as mentioned above: by adding -DskipTests
  • Execute only the tests that you are interested in
  • Wait for a fix or contribute one related the time zone issue in the test suite

Ticket reported for failing tests: HistoryCleanupScheduler tests fail when build runs on UTC timezone · Issue #2604 · camunda/camunda-bpm-platform · GitHub

Best,
Yana

I think I am able to fix these tests. Can I just open the PR with this issue #2604?

1 Like

@prajwol12, that would be great. Don’t forget to link the github issue in your pull request.
You can follow the instructions from our Contribution guide.
When the pull request is submitted, someone from the team will get in touch with you.