5 common compliance risks licensing Java

#4: using commercial features

The fuss around licensing Java

Many organizations use Java for different kinds of applications and development scenarios. They often are under the impression that Java software can be deployed “for free” at all times. Lately organizations are confronted with compliance issues and unexpected costs as they don’t fully understand the restrictions of the Java SE Platform software license. Also, Oracle has released new support policies that force customers to upgrade more frequently or keep older versions (with no or paid support). To make it even more complex, certain Oracle programs include a ‘full use’ or ‘restricted use’ license for Java’s commercial features, which adds the challenge to understand whether and to what extent you are covered for the usage of Java.

The complexity around Java makes many Oracle end users worry about the compliance risks related to licensing Java. That’s why we will address this topic in our article series over the coming weeks and will share our experiences assisting customers to manage their license entitlements and deployments. The compliance risk we will cover in this article is related to the question whether you use commercial features.

Commercial features available with Java Platform SE

  • Java Flight Recorder – for server/ desktop
  • Java Mission Control
  • Java Advanced Management Console
  • Jrockit Flight Recorder
  • JRockit Mission Control Console observability
  • JRockit Mission Control Memory Leak Detector observability
  • JRockit Real Time, Deterministic GC
  • JRockit Development Kit
  • JRE Usage Tracking
  • JavaFX Runtime
  • Java SE Enterprise Installer
  • Java SE Development Kit for embedded devices

Commercial features requiring a license

The above-mentioned features require a license of Java SE Advanced, Java SE Advanced Desktop or Java SE Suite if you are using the commercial features for internal business operations or for any commercial or production purpose. Nevertheless, as long as you are using these features unmodified for the purpose of designing, developing, and testing your programs, then such use is not required to be licensed separately.

It’s important to know that Oracle states in their documentation that end users might not get all the included features through the product download. In order to have access to all the features included in a product, end users may need to download more than one installation package. There is no one-to-one relationship between products, features, and installation packages. Installation packages may include features that are not available to all Java SE products and a single Java SE product may require more than one installation package. In addition, it may not be possible to download only the features licensed in a particular product as those features may only be available in installation packages that also include features not licensed in the desired product.

In Oracle’s License Information User Manual(LIUM) Oracle states: “There are no installers or packages that correspond directly with the Oracle Java SE or Oracle Java SE Embedded products listed above. You must ensure that you have the appropriate licenses to use any of the features from each of these packages.”

This makes it difficult for the end user to maintain a good insight in what features they have in use, and as such, what product license is required. We often encounter the situation where end users are not aware of the fact that they use some features which require to be licensed. For example, logs of Java Flight Recorder are frequently found due to the fact that developers find it very useful and they can be enabled very easily. However, they are not aware of the licensing implications of this feature.

Andrei has been working in the Software Asset Management industry since 2011 when he started as technical analyst in Oracle’s License Management Services (LMS) department. After 3 and a half years, he joined B-lay in 2014. Since then he’s been working with customers from various industries to help them get in control of their software license management. In parallel he’s contributing to B-lay’s internal automation for software deployment analysis. Andrei has a bachelor degree in Electronics, Telecommunication and Information Technology and a master in Database and Web Technologies.