Comprehensive Analysis
Problem Confirmation
Your analysis is 100% correct. The UnsupportedClassVersionError (FastDoubleSwar) you’re experiencing is a confirmed Java version incompatibility:
- Root Cause: Jackson 2.18.x (bundled in KSE 10.x) was compiled for Java 21 (class file version 65.0), but KSE 10.x runs on Java 17 (which only recognizes up to class file version 61.0)
- Why It Happens: Jackson 2.18.x includes multi-release JAR support with Java 21-specific optimizations that cannot run on Java 17
- Why No Patch Exists: This is a fundamental architectural incompatibility—KSE 10.x cannot be patched to support Jackson 2.18.x without upgrading Java itself
This issue affects both KSE 9.x and 10.x because they share the same Java 17 constraint.
Official Solution: Upgrade to KSE 11.0.0
Yes, upgrading to KSE 11 definitively resolves this error. This is not a workaround—it’s the official, supported fix. Here’s why:
Core Framework Alignment
| Component | KSE 10.x | KSE 11.x |
|---|---|---|
| Java | 17 | 21 LTS |
| Cucumber | 3.x | 7.x |
| Selenium | 4.22 | 4.39 |
| Jackson | 2.18.x (incompatible) | Compatible |
Key Release Notes (January 26, 2026):
“Upgrade to Java Eclipse Temurin 21 LTS”
“Upgraded Cucumber runtime to version 7”
“Large BDD projects experienced poor performance during the Loading BDD scripts step” — FIXED
“Added automatic rerun file generation for failed BDD scenarios”
Migration Path & Automated Support
KSE 11 includes automated migration tooling to ease the transition:
- Automated Migration Recipe: KSE 11 provides a built-in “Migrate from Studio 10.x to 11.x” recipe that automatically handles Cucumber 3 → Cucumber 7 migration
- Reduces Manual Work: The tool handles many common transformations automatically
However, you will need to make manual updates to your BDD projects for:
1. Step Definition Imports
Replace legacy imports:
// Before (10.x)
import cucumber.api.java.en.Given
import cucumber.api.java.en.When
import cucumber.api.java.en.Then
// After (11.x)
import io.cucumber.java.en.Given
import io.cucumber.java.en.When
import io.cucumber.java.en.Then
2. Regex-Based Step Definitions
Add explicit anchors (^ and $):
// Before (10.x)
@Given("user is on login page")
def userIsOnLoginPage() { ... }
// After (11.x)
@Given("^user is on login page$")
def userIsOnLoginPage() { ... }
3. Tag Expressions
Replace comma-separated tags with explicit operators:
// Before (10.x)
String[] tags = ["@tag1, @tag2"]
// After (11.x)
String[] tags = ["@tag1 or @tag2"]
Recommended Action Plan
- Backup your project (version control)
- Download KSE 11.0.0 from Katalon website
- Use the automated migration recipe in KSE 11 to migrate your project
- Manually update step definitions, imports, and tag expressions (see examples above)
- Test incrementally — run a subset of BDD tests first to validate the migration
- Verify Cucumber reports — note that background steps no longer appear in Cucumber HTML reports (Cucumber 7 behavior change)
Key Considerations
- No Rollback Path: Once migrated to KSE 11, you cannot easily revert to KSE 10.x due to Cucumber 7 syntax changes
- Breaking Changes: Cucumber 7 has several behavioral changes (e.g., background steps in reports, tag expression syntax)
- Performance Improvement: KSE 11 fixes the “poor performance during Loading BDD scripts” issue that affected large BDD projects in 10.x
- Java 21 LTS: Java 21 is a long-term support release, ensuring stability for future Katalon versions
Bottom Line: Yes, upgrading to KSE 11 definitively resolves this error. The Java 21 + Cucumber 7 combination eliminates the Jackson 2.18.x incompatibility. While there are manual migration steps required, the automated migration recipe significantly reduces the effort. This is the official, supported path forward.