Is it possible to use Scala without having troubles with patents?

Hello everyone,

I am currently learning Scala and ended up today on questions relative to Java and its JVM. I am beginner in that matter and its seems that the possibility to use some of the Java stack freely and in libre software is not really an easy guess.

I am aware of OpenJDK and other efforts to make a free/libre alternative to the original Oracle Java stack.

Since Scala and Java are intricated at some level, I wanted to be sure that I will be able to use my code as I want to, for closed-source commercial software or full FLOSS projects (GPL, Apache, MIT licensed) before going further.

I suppose the same question can be asked for libraries but in this case, I’ll respect the licenses for each one of them, it would not be redhibitory. My main concern is for the basic stack to produce and execute my code in Scala.

Thank you for your time.


In practice, nobody has problems with IP issues with Scala. Lots of other languages (e.g. Kotlin and Clojure) also run on the JVM, not just Java, and the Java runtime is open as you note (so Scala has no worse IP concerns than, say, Java).

If you manage to found a new unicorn company and suddenly everyone and their uncle is trying to exploit your newfound wealth through IP litigation, you will then have the funds to pay competent IP lawyers to handle the issues.

So although I am not a lawyer, there is no reason to believe that Scala is in any worse shape than pretty much any other language out there (especially once you start relying on libraries).

1 Like

There is no effort to create a free alternative to the original Oracle Java stack. OpenJDK is fully supported by Oracle and its development is done by Oracle, RedHat, and many other companies. The Oracle JDK stack these days is built off of openjdk, and mainly offers support from oracle.

The license of openjdk (which is the default version of java you should be using) is gplv2 + class path exception. That means, if your project produces a modified jvm and ships that to customers, you must provide that code to the openjdk project. However, depending on the default classpath of java (all the java.* packages) does not create a requirement for having your source be GPLv2.

In short, you can use java and the JVM for closed source commercial software and full FLOSS projects as long as you do not create a new JVM based off openjdk code and distribute that to users. If you do create a new JVM based off openjdk code, your new JVM must be GPLv2 + CPE.


I think recent video on What is openjdk? - inside java newscast #28 – answers many questions about various versions of JDK:
What is OpenJDK? - Inside Java Newscast #28 - YouTube

generally you should get OpenJDK from
you’ll get updates for free for a long time: Support
the project is backed by some serious companies: Working Group Members

OpenJDK license: OpenJDK: GPLv2 + Classpath Exception