Azul Statement on the eMudhra Intermediate CA Certificates Compromise
jdk-migration-bg

Amazon Corretto vs OpenJDK

Smart Summary

Amazon Corretto offers long-term support, AWS-managed security patches, and free pre-built binaries, while vanilla OpenJDK only keeps the latest release updated. This article compares the two for production Java workloads and looks at other OpenJDK distribution options.

Amazon Corretto is the better choice over vanilla OpenJDK for production Java workloads because it provides long-term support (LTS), AWS-managed security patches, and free pre-built binaries. Vanilla OpenJDK only keeps the latest release updated, making it impractical for teams that must stay on a stable LTS version for years. For most organizations, the real question is not simply Corretto vs. OpenJDK, but which OpenJDK distribution best fits their infrastructure, support requirements, and multi-cloud strategy.

OpenJDK is the open-source reference implementation of the Java SE specification. Oracle produces new OpenJDK releases on a strict six-month cadence, but only the most recent release receives active patches. Once a new version ships, the previous one is effectively abandoned by the upstream project. For applications that must run on Java 11 or Java 17 for years at a time, that model is unworkable without a distribution that backports fixes and provides long-term support commitments.

Amazon Corretto solves this gap for AWS customers. It delivers packaged OpenJDK binaries with quarterly security updates, multi-year LTS commitments, and tight integration with AWS services. However, teams running Java workloads outside AWS may find a vendor-neutral alternative — such as Azul Zulu — more flexible, given Zulu’s broader platform support and the option to add enterprise support through Azul Core.

What Is Amazon Corretto?

Amazon Corretto is a no-cost, production-ready distribution of OpenJDK maintained by Amazon Web Services. It is TCK (Technology Compatibility Kit) certified, meaning it passes the full Java SE compatibility test suite and can legally be used as a drop-in replacement for any other Java SE implementation. AWS releases Corretto builds for Java 8, 11, 17, 21 and 25, each with its own LTS roadmap extending well beyond Oracle’s free update windows.

Corretto is particularly attractive for teams invested in the AWS ecosystem. It ships pre-installed on Amazon Linux 2 and Amazon Linux 2023, and AWS validates it against their managed services including Lambda, ECS, and Elastic Beanstalk. Quarterly updates address CVEs and include Amazon-specific performance improvements, especially for Graviton (ARM64) processors. Binaries are available for Linux (x64 and ARM64), macOS, and Windows.

What Is OpenJDK?

OpenJDK is the official open-source reference implementation of Java SE, governed under GPLv2 with Classpath Exception. Oracle open-sourced the project in 2007, and it is now the basis for virtually every Java distribution in wide use — including Corretto, Temurin, and Azul Zulu. The upstream project operates on a six-month release cycle with contributions from Oracle, Red Hat, SAP, and other JVM ecosystem participants.

The fundamental limitation of vanilla OpenJDK from the upstream source is its support model: only the current release is actively maintained. Once Java 22 shipped, Java 21 updates from the upstream project slowed dramatically. For production systems requiring a stable LTS version with ongoing CVE patches, any packaged distribution — Corretto, Zulu, or Temurin — is a better choice than compiling and patching OpenJDK yourself.

Amazon Corretto vs OpenJDK Comparison

Feature Amazon Corretto Vanilla OpenJDK
License GPLv2 + Classpath Exception GPLv2 + Classpath Exception
Cost Free Free (source; binaries limited)
Support AWS patches; no SLA outside AWS Community only; latest version only
LTS Versions 8, 11, 17, 21 None (latest release only)
Performance HotSpot JVM, AWS-tuned patches HotSpot JVM, upstream only
Platforms Linux, Windows, macOS (x64, ARM64) Source only; limited binary support
TCK Certified Yes Reference implementation (basis)

Licensing and Cost

Both Amazon Corretto and OpenJDK are distributed under the GPLv2 with Classpath Exception, which allows use in proprietary applications without copyleft provisions applying to the application itself. This makes both options genuinely free to use in commercial software — no per-processor fees, no annual subscriptions, and no audit exposure for using either in production.

The practical cost of staying on a supported LTS version diverges sharply. OpenJDK upstream drops support for a version the moment the next version ships. Staying on Java 11 with ongoing CVE patches using only the upstream project would require teams to apply patches directly from the mailing list — not a realistic option for most organizations. Corretto provides pre-built, tested LTS binaries with AWS-sourced patches at no cost, but this comes with a dependency on Amazon’s patching priorities.

Azul Zulu, available free at azul.com/downloads, offers a comparable free LTS model with an optional upgrade path to Azul Core, which adds enterprise SLAs, dedicated support engineers, and committed response times. This gives Azul a continuum from no-cost to fully supported without changing the JDK build.

Performance and Support

At the JVM level, both Corretto and mainstream OpenJDK builds use the HotSpot JVM and execute identical bytecode. Benchmark differences between distributions running the same workload are generally within measurement noise. Where Corretto sometimes leads is in AWS-specific optimizations: Amazon has contributed patches improving performance on Graviton (ARM64) processors and Amazon Linux, and these improvements land in Corretto releases ahead of upstream.

On support, Corretto’s model is community-plus-AWS: AWS engineers maintain patches and respond to CVEs, but there is no formal SLA or enterprise support contract available for Corretto itself. Teams needing committed response times, indemnification options, or JVM-level debugging assistance must look elsewhere. Azul Core provides exactly this tier on top of OpenJDK-compatible binaries, allowing teams to start with free Zulu and add enterprise support without any migration cost.

Which Should You Choose?

Choose Amazon Corretto if your workloads run primarily on AWS infrastructure, you use Amazon Linux and want the pre-installed JDK, or you want an AWS-managed free LTS distribution with minimal operational overhead. Corretto is an excellent choice for AWS-native teams that do not need formal support SLAs.

Avoid vanilla OpenJDK from source in production unless you are a JDK developer who needs the absolute latest features and accepts the short six-month support window. For any production system requiring a stable, patched runtime, a packaged distribution is the right choice.

Choose Azul Zulu (free) or Azul Core (commercial) if you need: vendor-neutral multi-cloud or on-premises deployment, Java versions from 6 through 25+ [Source: azul.com/products/azul-support-roadmap/], broader platform support including Alpine Linux and Docker, or the option to add enterprise-grade support without switching JDK distributions.

Frequently Asked Questions

Is Amazon Corretto the same as OpenJDK?

Amazon Corretto is a distribution of OpenJDK, not a fork. It uses the same source code base with additional patches from AWS for security fixes, performance improvements, and LTS maintenance. Bytecode produced by Corretto is fully compatible with any other OpenJDK distribution, and you can switch between them without recompiling your application.

Can I use vanilla OpenJDK in production?

Technically yes, but you will only receive updates for the latest release. Once a new Java version ships every six months, the previous version receives no more upstream patches. For long-running production systems on LTS versions such as Java 11, 17, or 21, a distribution with an LTS commitment — Corretto, Azul Zulu, or Temurin — is the practical choice.

Does Amazon Corretto cost money?

No. Amazon Corretto is free for development and production use under the GPLv2 with Classpath Exception. AWS does not charge for Corretto binaries. However, there is no commercial support SLA available for Corretto outside of standard AWS support plans, which do not cover JVM-level issues in depth.

Which OpenJDK distribution has the best long-term support?

Azul Zulu offers one of the broadest LTS windows in the ecosystem, covering Java 6 through 25+ with patch availability and optional commercial support via Azul Core. Corretto and Temurin both cover the main LTS versions (8, 11, 17, 21). Oracle JDK offers a long commercial LTS but at significant per-employee subscription cost.

Is there a drop-in replacement for vanilla OpenJDK?

Yes. Any TCK-certified OpenJDK distribution is a binary-compatible drop-in replacement. Corretto, Azul Zulu, and Temurin all pass the Java SE TCK and are interchangeable at the binary level. You can switch distributions by pointing your JAVA_HOME environment variable to the new installation without recompiling application code.

Conclusion

Amazon Corretto is a clear improvement over vanilla OpenJDK for production workloads, offering LTS binaries, AWS-sourced security patches, and no-cost distribution. For AWS-native teams it is an excellent default. Teams running on other clouds, on-premises, or with heterogeneous platform requirements will benefit from a more neutral distribution.

Azul Zulu is a compelling free alternative: TCK-certified, supporting Java 6 through 25+, available on the widest range of platforms, and upgradeable to enterprise support through Azul Core without any JDK migration.