Cannot build/test Camunda with java 8/11

Hi

after a while, I want to make a contribution/PR for a DMN feature … but I cannot manage to get a local build running.
On my (fresh) machine, I have jdks 8 and 11 installed. After importing a fresh “pull” of the master branch into IDEA, it first failed with com.sun.tools:1.6 missing … I installed this in the man repo manually, but now Junit tests cannot compile with:

java: com.sun.tools.javac.code.Symbol$CompletionFailure: class file for org.camunda.feel.context.VariableProvider$1 not found

I thought Camunda was full jdk 1.8+ now? What am I doing wrong? Thanks!

Jan

Hi @jangalinski,

Is the issue present when building Camunda through the command line as well, or only through IntelliJ IDEA?

Also, if you open a project module as a separate IDEA project, can you build that module?

Best,
Nikola

UPDATE:

Try setting the compiler to Eclipse instead of Javac in Settings -> Build, Execution, Deployment -> Compiler -> Java Compiler -> Use Compiler : Eclipse. It seems that IntelliJ doesn’t play well with Scala imports, and the new FEEL engine that Camunda is using is written in Scala. (src: java - Compiler Error : com.sun.tools.javac.code.Symbol$CompletionFailure: class file for akka.actor.SupervisorStrategy$1 not found - Stack Overflow). This fixed it for me.

UPDATE 2: Enabling/installing the JetBrains Scala plugin also resolves the issue. This option is actually more correct, as it enables Scala development in IntelliJ, something you might need if you decide to contribute to the DMN engine.

UPDATE 3: the Scala plugin doesn’t help, and the Eclipse compiler needs to be set after each run. @jangalinski did you manage to resolve this issue?

Any update here? Just forked the repo, same error while building in IDEA (jdk 1.8 + eclipse compiler)

For me the Eclipse compiler setting doesn’t help.
But what helped was:

  1. Build the whole project.
  2. Just open the sub module in Intellij where you want wo work / run tests.

With this I was able to run the Tests in Intellij.

1 Like