Unable to run feature file from katalon studio

Caused by: java.lang.SecurityException: class “module-info”'s signer information does not match signer information of other classes in the same package

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

03-20-2025 05:07:18 pm Verification

Elapsed time: 1.309s

Verification FAILED.
Reason:
com.kms.katalon.core.exception.StepFailedException: Keyword runFeatureFile was failed (Root cause: java.lang.SecurityException: class “module-info”'s signer information does not match signer information of other classes in the same package
at cucumber.runtime.io.ResourceLoaderClassFinder.loadClass(ResourceLoaderClassFinder.java:42)
at cucumber.runtime.io.ResourceLoaderClassFinder.getDescendants(ResourceLoaderClassFinder.java:32)
at cucumber.runtime.Reflections.instantiateSubclasses(Reflections.java:33)
at cucumber.runtime.Reflections.instantiateExactlyOneSubclass(Reflections.java:17)
at cucumber.runtime.Runtime.loadBackends(Runtime.java:86)
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:110)
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:77)
at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$runFeatureFile.callStatic(Unknown Source)
at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:256)
at WSVerification1742470638804.run(WSVerification1742470638804: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:167)
at TempTempCase1742470634829.run(TempTempCase1742470634829.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)
)
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:77)
at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords$runFeatureFile.callStatic(Unknown Source)
at com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords.runFeatureFile(CucumberBuiltinKeywords.groovy:256)
at WSVerification1742470638804.run(WSVerification1742470638804: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:167)
at TempTempCase1742470634829.run(TempTempCase1742470634829.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.SecurityException: class “module-info”'s signer information does not match signer information of other classes in the same package
at cucumber.runtime.io.ResourceLoaderClassFinder.loadClass(ResourceLoaderClassFinder.java:42)
at cucumber.runtime.io.ResourceLoaderClassFinder.getDescendants(ResourceLoaderClassFinder.java:32)
at cucumber.runtime.Reflections.instantiateSubclasses(Reflections.java:33)
at cucumber.runtime.Reflections.instantiateExactlyOneSubclass(Reflections.java:17)
at cucumber.runtime.Runtime.loadBackends(Runtime.java:86)
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:110)
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

1 Like

Kindly format code snippets for better readability

class “module-info” signer mismatch typically occurs due to conflicting JAR files in project’s classpath

1. Remove Conflicting Dependencies

  • Cause: Mismatched signed JARs (e.g., multiple versions of Cucumber or Selenium libraries).
  • Solution:
    1. Navigate to your Katalon project’s Drivers or Plugins folder and delete duplicate JARs (e.g., cucumber-*.jar, selenium-*.jar).
    2. Use only the libraries bundled with Katalon Studio (avoid manually adding external JARs unless necessary).

2. Fix Cucumber Compatibility

  • Cause: Katalon’s Cucumber integration conflicts with newer libraries.
  • Solution:
    1. Open [Katalon_Installation]/plugins/org.codehaus.groovy**.libs/**.
    2. Check for multiple cucumber-core or cucumber-java JARs and retain only the version shipped with Katalon.
    3. Restart Katalon Studio.

3. Clean Katalon’s Cache

# Windows
cd %APPDATA%\KatalonStudio
rmdir /s /q Engine

# macOS/Linux
cd ~/.katalon
rm -rf Engine

4. Update Katalon Studio

  • Ensure you’re using the latest version of Katalon Studio (check via Help > Check for Updates).

5. Security Manager Workaround (Temporary)

Add -Djava.security.manager=allow to your Katalon Studio’s JVM arguments:

  • Edit katalon.vmoptions (located in the Katalon installation directory):
-Djava.security.manager=allow
  • Restart Katalon Studio.

6. Verify Project Settings

  • Ensure your Java version matches Katalon’s requirements (Java 8 or 11).
  • Disable browser extensions if you’re executing tests against Chrome/Firefox.

Example Fix Workflow

  1. Delete duplicate JARs from the project’s Drivers folder.
  2. Clear Katalon’s cache.
  3. Restart Katalon and run the test again

Refer this post too

Hi @sandeep4582kumar,

Welcome to our community, Thank you for sharing your issue.

I found some relevant discussions with solution here:

Please take a look. Otherwise, try the suggestions from @dineshh and let us know if they can help. Thank you