Run failure when trying to execute feature file

OS: macOS Sonoma
Katalon Version: 9.0.0

When trying to execute a feature file the following class is missing: com.lmax.disruptor.EventTranslatorVararg

See full stack error below:

=============== ROOT CAUSE =====================

Caused by: java.lang.ClassNotFoundException: com.lmax.disruptor.EventTranslatorVararg

For trouble shooting, please visit: https://docs.katalon.com/katalon-studio/docs/troubleshooting.html

================================================

11-10-2023 04:39:08 pm Verification

Elapsed time: 1.093s

Verification FAILED.

Reason:

com.kms.katalon.core.exception.StepFailedException: Keyword runFeatureFile was failed (Root cause: java.lang.NoClassDefFoundError: com/lmax/disruptor/EventTranslatorVararg

at cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:40)

at cucumber.runtime.java.JavaBackend.loadGlue(JavaBackend.java:82)

at cucumber.runner.Runner.<init>(Runner.java:36)

at cucumber.runtime.Runtime.<init>(Runtime.java:65)

at cucumber.runtime.Runtime.<init>(Runtime.java:46)

at cucumber.runtime.Runtime.<init>(Runtime.java:42)

at cucumber.api.cli.Main.run(Main.java:34)

at cucumber.api.cli.Main$run.call(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$_runFeatureFile_closure1.doCall(CucumberBuiltinKeywords.groovy:111)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$_runFeatureFile_closure1.doCall(CucumberBuiltinKeywords.groovy)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:75)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:69)

at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:78)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$runFeatureFile.callStatic(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:251)

at WSVerification1699594748267.run(WSVerification1699594748267:2)

at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)

at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)

at com.kms.katalon.core.main.WSVerificationExecutor.runScript(WSVerificationExecutor.java:180)

at com.kms.katalon.core.main.WSVerificationExecutor.doExecute(WSVerificationExecutor.java:174)

at com.kms.katalon.core.main.WSVerificationExecutor.processExecutionPhase(WSVerificationExecutor.java:157)

at com.kms.katalon.core.main.WSVerificationExecutor.accessMainPhase(WSVerificationExecutor.java:149)

at com.kms.katalon.core.main.WSVerificationExecutor.execute(WSVerificationExecutor.java:131)

at com.kms.katalon.core.main.TestCaseMain.runFeatureFile(TestCaseMain.java:174)

at TempTempCase1699594747007.run(TempTempCase1699594747007.groovy:25)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

Caused by: java.lang.ClassNotFoundException: com.lmax.disruptor.EventTranslatorVararg

... 32 more

)

at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy:51)

at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:77)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:69)

at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:78)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$runFeatureFile.callStatic(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:251)

at WSVerification1699594748267.run(WSVerification1699594748267:2)

at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)

at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)

at com.kms.katalon.core.main.WSVerificationExecutor.runScript(WSVerificationExecutor.java:180)

at com.kms.katalon.core.main.WSVerificationExecutor.doExecute(WSVerificationExecutor.java:174)

at com.kms.katalon.core.main.WSVerificationExecutor.processExecutionPhase(WSVerificationExecutor.java:157)

at com.kms.katalon.core.main.WSVerificationExecutor.accessMainPhase(WSVerificationExecutor.java:149)

at com.kms.katalon.core.main.WSVerificationExecutor.execute(WSVerificationExecutor.java:131)

at com.kms.katalon.core.main.TestCaseMain.runFeatureFile(TestCaseMain.java:174)

at TempTempCase1699594747007.run(TempTempCase1699594747007.groovy:25)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

Caused by: java.lang.NoClassDefFoundError: com/lmax/disruptor/EventTranslatorVararg

at cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:40)

at cucumber.runtime.java.JavaBackend.loadGlue(JavaBackend.java:82)

at cucumber.runner.Runner.<init>(Runner.java:36)

at cucumber.runtime.Runtime.<init>(Runtime.java:65)

at cucumber.runtime.Runtime.<init>(Runtime.java:46)

at cucumber.runtime.Runtime.<init>(Runtime.java:42)

at cucumber.api.cli.Main.run(Main.java:34)

at cucumber.api.cli.Main$run.call(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$_runFeatureFile_closure1.doCall(CucumberBuiltinKeywords.groovy:111)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$_runFeatureFile_closure1.doCall(CucumberBuiltinKeywords.groovy)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:75)

... 18 more

Caused by: java.lang.ClassNotFoundException: com.lmax.disruptor.EventTranslatorVararg

... 32 more
1 Like

It seems you need to add log4j2 in the External Library

https://docs.katalon.com/docs/create-tests/manage-projects/project-settings/library-management-in-katalon-studio#add-external-libraries-to-a-project

1 Like

I did a comparison between Katalon version 8.6.8 and 9.0.0 and 8.6.8 does not need any additional dependencies in order to execute a feature file. Why does version 9 require the addition of jars to execute a simple feature? is this due to the differences in the version of the product itself or the java version?
I.E. Katalon version 8.6.8 is running Java 8 and Groovey 2.4.20 whereas Katalon version 9.0.0 is running Java version 17.

If this is related to the java version has anyone been able to get the feature file executing properly in Katalon 9 and if so what dependencies are required?

Currently I have included the below dependencies but I am still getting run errors:

commons-compress-1.24.0.jar
commons-csv-1.10.0.jar
disruptor-4.0.0.jar
jackson-dataformat-yaml-2.15.3.jar
jakarta.mail-api-2.1.2.jar
javax.jms-api-2.0.1.jar
javax.mail.jar
jeromq-0.5.4.jar
log4j-core-2.21.1.jar
xz-1.9.jar
zstd-jni-1.5.5-10.jar

=============== ROOT CAUSE =====================

Caused by: java.lang.ClassNotFoundException: org.brotli.dec.BrotliInputStream

For trouble shooting, please visit: https://docs.katalon.com/katalon-studio/docs/troubleshooting.html

================================================

11-13-2023 11:16:34 am Verification

Elapsed time: 1.166s

Verification FAILED.

Reason:

com.kms.katalon.core.exception.StepFailedException: Keyword runFeatureFile was failed (Root cause: java.lang.NoClassDefFoundError: org/brotli/dec/BrotliInputStream

at cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:40)

at cucumber.runtime.java.JavaBackend.loadGlue(JavaBackend.java:82)

at cucumber.runner.Runner.(Runner.java:36)

at cucumber.runtime.Runtime.(Runtime.java:65)

at cucumber.runtime.Runtime.(Runtime.java:46)

at cucumber.runtime.Runtime.(Runtime.java:42)

at cucumber.api.cli.Main.run(Main.java:34)

at cucumber.api.cli.Main$run.call(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$_runFeatureFile_closure1.doCall(CucumberBuiltinKeywords.groovy:111)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$_runFeatureFile_closure1.doCall(CucumberBuiltinKeywords.groovy)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:75)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:69)

at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:78)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$runFeatureFile.callStatic(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:251)

at WSVerification1699834594847.run(WSVerification1699834594847:2)

at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)

at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)

at com.kms.katalon.core.main.WSVerificationExecutor.runScript(WSVerificationExecutor.java:180)

at com.kms.katalon.core.main.WSVerificationExecutor.doExecute(WSVerificationExecutor.java:174)

at com.kms.katalon.core.main.WSVerificationExecutor.processExecutionPhase(WSVerificationExecutor.java:157)

at com.kms.katalon.core.main.WSVerificationExecutor.accessMainPhase(WSVerificationExecutor.java:149)

at com.kms.katalon.core.main.WSVerificationExecutor.execute(WSVerificationExecutor.java:131)

at com.kms.katalon.core.main.TestCaseMain.runFeatureFile(TestCaseMain.java:174)

at TempTempCase1699834593490.run(TempTempCase1699834593490.groovy:25)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

Caused by: java.lang.ClassNotFoundException: org.brotli.dec.BrotliInputStream

… 32 more

)

at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy:51)

at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:77)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:69)

at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:78)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$runFeatureFile.callStatic(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:251)

at WSVerification1699834594847.run(WSVerification1699834594847:2)

at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)

at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)

at com.kms.katalon.core.main.WSVerificationExecutor.runScript(WSVerificationExecutor.java:180)

at com.kms.katalon.core.main.WSVerificationExecutor.doExecute(WSVerificationExecutor.java:174)

at com.kms.katalon.core.main.WSVerificationExecutor.processExecutionPhase(WSVerificationExecutor.java:157)

at com.kms.katalon.core.main.WSVerificationExecutor.accessMainPhase(WSVerificationExecutor.java:149)

at com.kms.katalon.core.main.WSVerificationExecutor.execute(WSVerificationExecutor.java:131)

at com.kms.katalon.core.main.TestCaseMain.runFeatureFile(TestCaseMain.java:174)

at TempTempCase1699834593490.run(TempTempCase1699834593490.groovy:25)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

Caused by: java.lang.NoClassDefFoundError: org/brotli/dec/BrotliInputStream

at cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:40)

at cucumber.runtime.java.JavaBackend.loadGlue(JavaBackend.java:82)

at cucumber.runner.Runner.(Runner.java:36)

at cucumber.runtime.Runtime.(Runtime.java:65)

at cucumber.runtime.Runtime.(Runtime.java:46)

at cucumber.runtime.Runtime.(Runtime.java:42)

at cucumber.api.cli.Main.run(Main.java:34)

at cucumber.api.cli.Main$run.call(Unknown Source)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$_runFeatureFile_closure1.doCall(CucumberBuiltinKeywords.groovy:111)

at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$_runFeatureFile_closure1.doCall(CucumberBuiltinKeywords.groovy)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:75)

… 18 more

Caused by: java.lang.ClassNotFoundException: org.brotli.dec.BrotliInputStream

… 32 more

1 Like