ClassNotFound exception in Gatling 3.4.1


Since we upgraded from Gatling 3.3.1 to version 3.4.1 we regularly, though randomly, get a ClassNotFound exception while starting a script.

In our environment we created a Docker-container running Gatling 3.4.1. At one single time about 3 Docker containers might be running sharing a filesystem containing the scripts. Now once in a while Gatling complains about not be able to find a test class. The next basically always can find it and runs properly for several runs in a row. And then, once in a while, it again complains about the ClassNotFound issue.

GATLING_HOME is set to /opt/gatling

09:20:23.929 [ERROR] i.g.a.Gatling$ - Run crashed

java.lang.ClassNotFoundException: com.simacan.TestSimulation


We have over 40 scripts so to speed up the compilation process, we store the target directory also outside the Docker container and share it. This was working perfectly fine in Gatling 3.3.1. However, as mentioned already, in Gatling 3.4.1 it sometimes crashes.

In the logs I don’t see any messages from the Zinc-compiler. I checked, if there is a problem in one of the scripts (eg. syntax error) I do see messages in the log. So it seems the Zinccompiler is not having an issue)

Does any one have any suggestion?

Sorry, but that’s the kind of homegrown solution we can’t help with.
When you’re choosing Build vs Buy, you’re choosing to be on your own instead of using a standard solution with the support of the editor…

It could be an issue with concurrent access to the shared filesystem but who knows.
I’m pretty sure Zinc doesn’t support such usage so it’s entirely possible things changed there without any further notice.
We haven’t changed anything except upgrading the version.