License Type · Binary Code License

The BCL License.

An independent guide to the Oracle Binary Code License for Java SE — what it permitted, why it ended in 2019, and what it means for the Java still running in your estate.

Not an Oracle partner or reseller
100% buyer-side advisory
Money-back audit defence guarantee
340+ Java engagements
What it is

The licence that made Java ‘free’ — and the day that ended.

The Binary Code License Agreement, universally shortened to the BCL, is the legal agreement under which Oracle — and Sun Microsystems before it — distributed Java SE binaries for well over a decade. For most of that period the BCL is the reason Java earned its reputation as “free”: it permitted general-purpose use of the Oracle JDK and JRE, including commercial and production use, at no charge.

That permission was real, but it was always narrower than the folklore suggested. The BCL granted free use for general purpose computing while carving out a set of commercial features — tools such as Java Flight Recorder and Mission Control on older releases — that required a separate paid licence even when the rest of the JDK did not.

Why the BCL ended

The BCL era closed with Java SE 8. Oracle published Java 8 public updates under the BCL through update 8u202, released in January 2019. From update 8u211 in April 2019, Oracle re-licensed Java SE 8 public updates under the more restrictive OTN License Agreement. That change — not a new product, simply a new licence on the same update stream — is the single event that turned “free” Oracle Java into a licensing liability for thousands of enterprises.

Key facts at a glance

License era

Approximately 2006 – 2019

Last free Java 8 release

8u202 (January 2019)

Free use

General purpose computing, including production

Excludes

Designated commercial features

Replaced by

OTN License Agreement (April 2019)

Permitted & prohibited

What the BCL allowed — and where it stopped.

The BCL permitted free use, including in production, of the specific Oracle JDK and JRE binaries released under it — for general purpose desktop and server computing, with redistribution allowed under defined conditions.

It did not grant free use of the designated commercial features, and — critically — it only ever covered the exact binaries published under it. The BCL does not extend forward to OTN-licensed or NFTC-licensed releases. “We have always used Java under the BCL” is not a defence for running a 2021 build of Oracle JDK 11.

What it costs — and the hidden price

Use of BCL-covered binaries for general purpose computing was free. The hidden price is security. The last free BCL release of Java 8, update 8u202, is now more than seven years old and receives no patches. An estate still standing on BCL-era Java 8 is free in licensing terms but exposed in security terms — and the moment it applies a newer Oracle update, it is no longer under the BCL at all.

Watch out

Where the BCL trips enterprises up.

Mistake 01

Believing the BCL still applies

The BCL covers only the binaries published under it. Any Oracle JDK update released from April 2019 onward falls under OTN or NFTC — not the BCL — no matter how long you have run Java.

Mistake 02

Mixing BCL and post-BCL binaries

Estates often run a blend of old BCL Java 8 and newer Oracle updates. The newer binaries carry their own licence, and the BCL provides no cover for them.

Mistake 03

Staying on 8u202 for the free licence

Remaining on the last free BCL release keeps the licence free but freezes you on an unpatched, seven-year-old runtime — a serious and growing security risk.

How we help

Turn licence uncertainty into a clear position.

Audit defence comes with a money-back guarantee

If we take on your Oracle Java audit and cannot reduce the claim, we refund our fees. See how the guarantee works →

Still relying on the BCL? Find out for certain.

We map exactly which licence each Oracle JDK in your estate falls under — BCL, OTN, or NFTC — and what each one means for your exposure.

Contact Us →All License Types

The Java Licensing Brief

Weekly Oracle Java updates, audit alerts, and negotiation intel.