Confused about Oracle Binary Code License (BCL) and becoming a "Licensee"

3213 views
Skip to first unread message

Grant Robertson

unread,
Jul 13, 2012, 7:29:46 AM7/13/12
to java...@googlegroups.com
I would like to get back into Java development, however the terms of the Oracle Binary Code License (BCL) and this whole thing about becoming a "Licensee" has me a bit confused. With the way Oracle has worded the text about becoming a licensee and with all the talk about the "Commercial Features" in the BCL, I can't tell if I will be able to even say, "This program is written in Java" without paying Oracle a lot of money.

On the page about becoming a "Licensee," when they say, "Only Java SE licensees can claim compatibility with Java SE specifications and can ship Java SE-branded products." are they talking about programs written in Java or are they really only talking about writing an alternative JVM or JDK? If the former, then I am so outta here.

I have read in some places (I lost track of where) that the "commercial features" will be easy to spot in the documentation so one can avoid using them. According to this page,
"Some of the packages described in Installation of Java SE Product Editions install commercial features that are restricted to Oracle Java SE Advanced or Oracle Java SE Suite. For example, the JRockit JDK comes with a deterministic garbage collector that requires a Oracle Java SE Suite license."
How the heck am I supposed to make sure that a particular garbage collector does not end up being used when my program runs?

I have heard about the OpenJDK and have perused their web site. That just opened a few other cans of worms. Do I have to use the OpenJDK if I don't want to pay Oracle money to distribute my own program written in Java? ... Seriously, there are no OpenJDK installation binaries for Windows? ... I am particularly interested in Java 1.7 and JavaFX. According to this page, "Oracle's code will be donated in phases with the initial piece being the UI Controls classes. Further sub-systems are expected in the coming months." So, how can I know which "subsystems" will be available for me to use if I use OpenJFX instead of JavaFX, and what the heck is their exact definition of "subsystem" in this context? Am I going to have to constantly watch for "gotchas" and search endlessly for workarounds in OpenJFX for things that just work in Oracle's JavaFX distribution? ... And what if I write something in OpenJFX which someone subsequently tries to run on a computer with JavaFX installed? Will that just be a nightmare, or what?

I just want to write some Java programs that will most likely be released as open-source (but some things I do, I may try to sell). How the heck do I navigate this morass of licensing issues without it becoming a secondary - non-paying and totally non-fun - career?

Ricky Clarkson

unread,
Jul 13, 2012, 2:18:32 PM7/13/12
to java...@googlegroups.com
It's generally about implementations that might compete with Oracle's.  Note that Oracle failed in a recent court case against Google.

I don't believe a vendor of a Java application has ever been targeted in a lawsuit by Oracle or Sun before them, and I don't believe there's any intention of that nor scope for it in the licences.

The GPL+Classpath exception might be easier to audit (i.e., OpenJDK).  I don't know about installers for Windows for it.  I hope some of the parts that become open source from JavaFX are the parts that handle MPEG-4 or H.264, though I expect that will be tricky.

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To view this discussion on the web visit https://groups.google.com/d/msg/javaposse/-/W80OX1raAR4J.
To post to this group, send email to java...@googlegroups.com.
To unsubscribe from this group, send email to javaposse+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.

Fabrizio Giudici

unread,
Jul 13, 2012, 2:36:46 PM7/13/12
to java...@googlegroups.com, Grant Robertson
Of course IANAL...

On Fri, 13 Jul 2012 13:29:46 +0200, Grant Robertson <gra...@gmail.com>
wrote:

> On the page about becoming a
> "Licensee,"<http://www.oracle.com/technetwork/java/javase/overview/licensees-jsp-136136.html>when
> they say, "Only Java SE licensees can claim compatibility with Java SE
> specifications and can ship Java SE-branded products." are they talking
> about programs written in Java or are they really only talking about
> writing an alternative JVM or JDK? If the former, then I am so outta
> here.

I presume the latter. In any case: does your application claim
compatibility with Java SE or need to put a brand? I don't think so,
right? So this shouldn't be really a problem.

> How the heck am I supposed to make sure that a particular garbage
> collector
> does not end up being used when my program runs?

There are specific, documented command line options for controlling the
Garbage Collector and e.g. picking an implementation.

> I have heard about the OpenJDK <http://openjdk.java.net/> and have
> perused
> their web site. That just opened a few other cans of worms. Do I have to
> use the OpenJDK if I don't want to pay Oracle money to distribute my own
> program written in Java? ... Seriously, there are no OpenJDK installation
> binaries for Windows <http://openjdk.java.net/install/>? ... I am

Here's the point, if you can test with OpenJDK and you're fine, it's the
best way to avoid any legal hassle. AFAIK the Windows installer problem is
real, and I suppose the community should make it a primary point.

I'm only aware of a GPL+CPE binary released for Windows:

http://jdk7.java.net/java-se-7-ri/

but I'm puzzled about the disclaimer of it being only "a reference
implementation".


> particularly interested in Java 1.7 and JavaFX. According to this
> page<http://openjdk.java.net/projects/openjfx/>,
> "Oracle's code will be donated in phases with the initial piece being the
> UI Controls classes. Further sub-systems are expected in the coming
> months." So, how can I know which "subsystems" will be available for me
> to
> use if I use OpenJFX instead of JavaFX, and what the heck is their exact
> definition of "subsystem" in this context? Am I going to have to
> constantly
> watch for "gotchas" and search endlessly for workarounds in OpenJFX for
> things that just work in Oracle's JavaFX distribution? ... And what if I
> write something in OpenJFX which someone subsequently tries to run on a
> computer with JavaFX installed? Will that just be a nightmare, or what?

I'd say no more than the same risk of Oracle JDK vs OpenJDK, furthermore
complicated by the possible co-existence of different installed versions.
Target OpenJFX and make sure by means of a proper installer that you run
your code with the intended runtime.

> I just want to write some Java programs that will most likely be released
> as open-source (but some things I do, I may try to sell). How the heck
> do I
> navigate this morass of licensing issues without it becoming a secondary
> -
> non-paying and totally non-fun - career?

As I said, go for the Open* stuff and you're fine. We're a lot of people
producing and distributing FLOSS things based on Java.


--
Fabrizio Giudici - Java Architect, Project Manager
Tidalwave s.a.s. - "We make Java work. Everywhere."
fabrizio...@tidalwave.it
http://tidalwave.it - http://fabriziogiudici.it

Grant Robertson

unread,
Jul 13, 2012, 10:04:15 PM7/13/12
to java...@googlegroups.com, Grant Robertson


On Friday, July 13, 2012 11:36:46 AM UTC-7, fabrizio.giudici wrote:
does your application claim compatibility with Java SE or need to put a brand? I don't think so,  
right?

See, that's the thing. I don't know for sure. It depends on Oracle's definitions of "compatibility" and "branding" in this context. Normally, "compatibility" just means that Thing A will work with Thing B. So, do I need to become an official "licensee" if I want to say that my Java program works just fine with Oracle's JRE or JVM? Or are they redefining "compatibility" to mean "works exactly the same"? It seems as if they are. But who can know until the lawyers come after them? Or is Oracle trying to create FUD about their own product so everyone will think they need to become a licensee? I mean, when we say that someone is "compatible" with their spouse, we do NOT mean that they are functionally identical. Not every couple are Jeff & Akbar.

 
There are specific, documented command line options for controlling the  
Garbage Collector and e.g. picking an implementation.

OK, so I will worry about that when the time comes.

 
Here's the point, if you can test with OpenJDK and you're fine, it's the  
best way to avoid any legal hassle.

Though I have not been developing with Java, I have been in the computer and/or electronics industry for almost 30 years. It has always been the case that going with the lowest common denominator will allow the most compatibility. But it is rarely the case that that LCD has all the features or reliability that one needs or wants. I can also avoid legal hassle by going with C and using the GNU C compiler on a Linux machine and writing all my own libraries from scratch. But I don't want to program with C. Just as I am not too very interested in programming in a clone of a language which may or may not be reliable, stable, and completely compatible. The primary reason I am finally interested in programming again is because of JavaFX 2. I am primarily interested in UI and Swing just didn't seem flexible enough to me without jumping through a hell of a lot of hoops. So, if I am going to be developing in Java, pretty much at all, I will want Oracle's stable and more feature complete JavaFX over OpenJFX.

 
Target OpenJFX and make sure by means of a proper installer that you run  
your code with the intended runtime.

Yes, but then I have to tell potential users of the program that my program may not work with the JRE they have installed even if it is the latest one, or even if it is a specific version of the "official" JRE. I will have to tell them that I will be installing a completely different JRE on their system, just to get my program to work. That could decrease the number of people who want to use the program.

 
As I said, go for the Open* stuff and you're fine. We're a lot of people  
producing and distributing FLOSS things based on Java.

Actually, I know it is not that simple. There are still all the incompatible FLOSS licenses that may be assigned to various libraries that I may want to use. I know I will have that problem anyway, but I don't want to add to my troubles with GPL libraries in the JDK that I choose to use. 

So, in the end, you have told me how to avoid my question altogether by opening up yet other cans of worms. These are cans of worms that you are comfortable with, but that I would rather not deal with.

Thanks for trying to help, but not every problem can be solved by just "going with open source."

If anyone can answer my original questions, I would appreciate it.
  1. Does one need to become a "licensee" to write regular Java programs? In other words, has Oracle redefined "compatibility" to mean "works identically to"?
  2. Are there ways to avoid using the "commercial features" without throwing the baby, the water, and the whole darned bathtub out with the gold-plated rubber-ducky?

Fabrizio Giudici

unread,
Jul 14, 2012, 3:27:28 AM7/14/12
to java...@googlegroups.com, Grant Robertson
On Sat, 14 Jul 2012 04:04:15 +0200, Grant Robertson <gra...@gmail.com>
wrote:


> Yes, but then I have to tell potential users of the program that my
> program
> may not work with the JRE they have installed even if it is the latest
> one,
> or even if it is a specific version of the "official" JRE. I will have to

This point is going to be debated a lot and has been also talked about
here (briefly). In a few words, many think that from now on the best way
to deploy a desktop application is by embedding a JRE inside. For Mac OS X
Oracle/Apple even prepared a special "bundable" JRE. Of course, the thing
can be done even with a bundable OpenJRE. There are some pitfalls (the
primary being that you're growing applications in size) but also
fundamental advantages (embedding a JRE is the only way to distribute Mac
OS X apps in the Apple Store). Technical problems apart, this approach
zeroes legal problems: you don't have to explain to users anything about
compatibility, since you're distributing a completely self-contained
bundle.


Note that OpenJDK is not a stripped down version of the JDK. For me, I'm
only using OpenJDK for the server side since the past summer. For the
desktop, there are a few bugs in some areas that should be corrected. But
for instance I can run NetBeans 7.1.2 with OpenJDK 7 on Mac OS X with only
a few bugs (one is an annoying one, since it's related to copy&paste which
you're suppose to use a lot in an IDE, but I mean, it's stuff that will be
fixed soon I believe).

Joseph Darcy

unread,
Jul 14, 2012, 12:40:43 PM7/14/12
to java...@googlegroups.com
On Fri, Jul 13, 2012 at 4:29 AM, Grant Robertson <gra...@gmail.com> wrote:
> I would like to get back into Java development, however the terms of the
> Oracle Binary Code License (BCL) and this whole thing about becoming a
> "Licensee" has me a bit confused. With the way Oracle has worded the text
> about becoming a licensee and with all the talk about the "Commercial
> Features" in the BCL, I can't tell if I will be able to even say, "This
> program is written in Java" without paying Oracle a lot of money.

There are some blog entries from Oracle on the JDK licensing situation including

"JRockit is Now Free (and Other Java License Updates)"
https://blogs.oracle.com/henrik/entry/jrockit_is_now_free_and

> On the page about becoming a "Licensee," when they say, "Only Java SE
> licensees can claim compatibility with Java SE specifications and can ship
> Java SE-branded products." are they talking about programs written in Java
> or are they really only talking about writing an alternative JVM or JDK? If
> the former, then I am so outta here.
>
> I have read in some places (I lost track of where) that the "commercial
> features" will be easy to spot in the documentation so one can avoid using
> them. According to this page,
>>
>> "Some of the packages described in Installation of Java SE Product
>> Editions install commercial features that are restricted to Oracle Java SE
>> Advanced or Oracle Java SE Suite. For example, the JRockit JDK comes with a
>> deterministic garbage collector that requires a Oracle Java SE Suite
>> license."
>
> How the heck am I supposed to make sure that a particular garbage collector
> does not end up being used when my program runs?

On that point in particular, quoting from "Java 7 Questions & Answers
" https://blogs.oracle.com/henrik/entry/java_7_questions_answers

"Q: I read the JDK 7 license. It mentions something about Commercial
Features, what does that mean?
A: Sun versioned the end user license together with the binary, which
made it clear what terms applied for a particular release. However, it
also meant that a Java user would have to re-review the license for
every new release (including update release), which lead to
uncertainty around future licensing conditions. Oracle's approach is
to minimize the number of licenses used for Java - ideally getting it
down to only one. This means a more predictable and stable licensing
situation, at the cost of a slightly more complex license text since
it needs to be able to cover more scenarios. When we made JRockit free
we modified the Binary Code License to make it cover all versions of
Java, as well as JRockit. This was announced in one of my previous
blog posts. The "Commercial Features" clause is there to allow us to
port over value-add features from JRockit to the converged
Hotspot/JRockit JVM starting with JDK 7. Full details on what features
are non-free can be found in the product documentation. In the
standard JDK 7 GA binaries, there are no commercial features so there
is no risk that you use them by mistake. As we move such features to
JDK 7 in a future update, our plan is to require an explicit flag to
enable them. Note that these features are only restricted "for any
commercial or production purpose" so individual developers need not
worry. For full information, read the license text itself. "

HTH,

-Joe

Grant Robertson

unread,
Jul 15, 2012, 11:45:09 AM7/15/12
to java...@googlegroups.com, Grant Robertson
On Saturday, July 14, 2012 12:27:28 AM UTC-7, fabrizio.giudici wrote:
 In a few words, many think that from now on the best way  
to deploy a desktop application is by embedding a JRE inside. [...] Of course, the thing  
can be done even with a bundable OpenJRE.

Whoa! I didn't even know you could do such a thing. It does sound like an intriguing solution, especially for large applications.

Can I presume that there are utilities to handle this task?

 
There are some pitfalls (the  
primary being that you're growing applications in size)

By how much? Is there a way to only include the parts of the bundled JRE that one's application requires?

 
but also  
fundamental advantages (embedding a JRE is the only way to distribute Mac  
OS X apps in the Apple Store).

Don't give a rats about the Apple store.

 
Technical problems apart, this approach  
zeroes legal problems: you don't have to explain to users anything about  
compatibility, since you're distributing a completely self-contained  
bundle.

Just because you don't have to explain anything to users does NOT mean you now have zero legal problems. In fact, this approach increases legal problems because I would then definitely be distributing code written by someone else. Would this "bundling" be counted as "linking" under the GPL and require all my code to be GPL? Would that depend upon the method used for the "bundling"? At the very least, I would then have to provide source code (or links to the source code) for the parts that I bundled.


 
Note that OpenJDK is not a stripped down version of the JDK.

"Stripped down" - "incomplete"   
You say tomato, I say tomahto.

The end result is the same. There may be parts that don't work or that work differently. Possibly in frustratingly subtle ways. Those differences would be constantly changing as the OpenJDK code gets updated. So that would be one more thing adding to the cognitive overload of my already overloaded brain. This is exactly what turned people off about Un*x. There were so many [slightly] different versions that one had to be constantly aware of the subtle differences.

 
For me, I'm  
only using OpenJDK for the server side since the past summer. For the  
desktop, there are a few bugs in some areas that should be corrected. But  
for instance I can run NetBeans 7.1.2 with OpenJDK 7 on Mac OS X with only  
a few bugs (one is an annoying one, since it's related to copy&paste which  
you're suppose to use a lot in an IDE, but I mean, it's stuff that will be  
fixed soon I believe).

Would it be possible to run NetBeans on Oracle's JRE while still writing Java code based on the OpenJDK. I remember from school that NetBeans allows one to specify which version of the JDK to compile with. Can one simply add the OpenJDK to that list and then choose between OpenJDK and Oracle's JDK?

 
Of course none of this addresses the JVM part of this whole issue. I don't see any mention of an open JVM on the OpenJDK web site. A little research turned up one reference to JRockit eventually being contributed to OpenJDK but not yet. Wikipedia has a list of dozens of open source JVMs. However, how long will it be till Oracle sues them out of existence? Google survived, but only because they have as much if not more money than Oracle AND they got a judge who actually knows how to program. Besides, using any of those would just add to my cognitive overload. An open-source, somewhat-complete JDK running on an open-source, somewhat-complete JVM written by a different set of people.....

So, in the end, you have convinced me that OpenJDK MAY be moderately workable, if I am willing to be patient and work around the inevitable bugs. BUT ... you still have not addressed my original questions. Enthusiastically explaining to me how it is possible to scale the outside of a building and break in through a window, does not answer the question of, "Is it OK to walk in the front door?"

Grant Robertson

unread,
Jul 15, 2012, 12:22:46 PM7/15/12
to java...@googlegroups.com
On Saturday, July 14, 2012 9:40:43 AM UTC-7, jddarcy wrote:
There are some blog entries from Oracle on the JDK licensing situation including

"JRockit is Now Free (and Other Java License Updates)"
https://blogs.oracle.com/henrik/entry/jrockit_is_now_free_and

A) That blog post continuously conflates a JDK and a JVM, so how am I supposed to trust the accuracy of the rest of what he says?

B) It continuously obfuscates the answers in corporate double-speak. for instance:

Q: Are you planning on making JRockit open source?
A: The converged JVM will be made available through OpenJDK. We will not open-source the current JRockit implementation.

Note that he does not say that JRockit will be open source. Only that it will be made available through the OpenJDK web site. If Oracle was truly planning to make the converged HotSpot/JRockit code open source, don't you think they would have just come out and said so?

Plus look at these two snippits from the blog post:

JRockit is now free (gratis) for development and internal production use on general purpose computers.

Q: I am a developer, does this mean I can now use JRockit Mission Control for free?
A: Yes, there is no cost for development use. See the license for details.

Note how he says it is free "for development" but says nothing about "for distribution." So, it doesn't cost me anything to write the code (ain't that sweet of them), but it may or may not cost me if I want to distribute that code anywhere outside of my company? For clarification he directs us to the license agreement that caused me the confusion in the first place.

 
Well, this is where I read that the "Full details on what features are non-free can be found in the product documentation." But I don't see how it addresses how to specify whether a particular garbage collector does or does not get used when my code runs.

In the end all this verbiage from Oracle just sounds like a bunch of gobledegook corporate-speak designed to make it sound as if it might be OK to write code in Java but to never be entirely clear so they can always jump in and say, "Oh your program violates our terms, you have to pay us money."

That is why I posted in this group asking for a better explanation. So far, it seems my options are:

A) Use Oracle's JVM & JDK. Know that everything will work according to the documentation but always be in doubt as to whether I am legally allowed to distribute my code without paying Oracle money.

B) Use OpenJDK. Accept that I will have to work through bugs and incompatibilities and be concerned as to whether I am legally allowed to distribute my code without violating the GPL (which could still cost me money if I had wanted to profit from keeping that code proprietary).


Perhaps I will contact some companies who are selling proprietary programs written in Java as well as some open-source projects written in Java and see if they had to become a "Licensee" or if they had any trouble avoiding the "commercial features."

Ricky Clarkson

unread,
Jul 15, 2012, 1:09:32 PM7/15/12
to java...@googlegroups.com

I think you need to speak to a lawyer.  I believe there are a number of those who specialise in software licencing.

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To view this discussion on the web visit https://groups.google.com/d/msg/javaposse/-/vXGmoK4ZEhsJ.

Russel Winder

unread,
Jul 15, 2012, 1:27:43 PM7/15/12
to java...@googlegroups.com
On Sun, 2012-07-15 at 14:09 -0300, Ricky Clarkson wrote:
> I think you need to speak to a lawyer. I believe there are a number of
> those who specialise in software licencing.

Moreover, OP needs to get a legal opinion (*) in each jurisdiction in
which a sale, or any other form of distribution outside the organization
of development, may be made. Despite what the USA thinks, USA law does
not apply in other jurisdictions. And vice versa.

(*) Not the views of some self-selecting JVM-based techies. :-)
--
Russel.
=============================================================================
Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel...@ekiga.net
41 Buckmaster Road m: +44 7770 465 077 xmpp: rus...@winder.org.uk
London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
signature.asc

Fabrizio Giudici

unread,
Jul 16, 2012, 4:12:55 AM7/16/12
to java...@googlegroups.com, Grant Robertson
On Sun, 15 Jul 2012 17:45:09 +0200, Grant Robertson <gra...@gmail.com>
wrote:

> Whoa! I didn't even know you could do such a thing. It does sound like an
> intriguing solution, especially for large applications.
>
> Can I presume that there are utilities to handle this task?

Yes, but I don't know about because all the one that I tried aren't good
enough for me from the point of view of the tooling. For Mac OS X, I've
done that with a mix of Maven and jarbundler. For Windows I've not yet
found something decent. Linux will probably go without embedding, since
there's the very good dependency mechanism of the package managers.

> By how much? Is there a way to only include the parts of the bundled JRE
> that one's application requires?

The OpenJRE 7 with OpenJFX is very large (110MB uncompressed on Mac OS X).
I'd say it's taking 50-60MB of my compressed bundle.

Yes, it's possible to strip away parts and I think there's also an
official doc for OpenJDK 7, but I've never tried.

> Just because you don't have to explain anything to users does NOT mean
> you
> now have zero legal problems. In fact, this approach increases legal

No, but since many people do the same thing, at least a lot of people are
in the same boat ;-)

> problems because I would then definitely be distributing code written by
> someone else. Would this "bundling" be counted as "linking" under the GPL
> and require all my code to be GPL? Would that depend upon the method used
> for the "bundling"? At the very least, I would then have to provide
> source
> code (or links to the source code) for the parts that I bundled.

No, you don't. OpenJDK is released trough a variant GPL + ClassPath
Exception (CPE), which means that "linking" to the runtime API doesn't
trigger the virality of GPL. You don't need to provide source code, just
keep the standard README, LICENSE etc... of OpenJDK where the source URL
is linked and you're fine.

> The end result is the same. There may be parts that don't work or that
> work
> differently. Possibly in frustratingly subtle ways. Those differences

This is correct - there are different bugs. But as it happens with bugs,
once you focus on either platform, you test the integration and hopefully
solve them. There are Swing parts in OpenJDK that are said to be slightly
worse than Oracle's JDK.

> Would it be possible to run NetBeans on Oracle's JRE while still writing
> Java code based on the OpenJDK. I remember from school that NetBeans
> allows
> one to specify which version of the JDK to compile with. Can one simply
> add
> the OpenJDK to that list and then choose between OpenJDK and Oracle's
> JDK?

Yes. NetBeans can manage multiple Java platforms associated to each
project.

> So, in the end, you have convinced me that OpenJDK MAY be moderately
> workable, if I am willing to be patient and work around the inevitable
> bugs. BUT ... you still have not addressed my original questions.
> Enthusiastically explaining to me how it is possible to scale the outside
> of a building and break in through a window, does not answer the question
> of, "Is it OK to walk in the front door?"

Well, my point is: OpenJDK is used by a lot of people and it's part of the
Linux distros (they don't carry any longer the Oracle bits). This means
that a number of license experts have done their homework and presume
OpenJDK is fine to be redistributed. This doesn't guarantee me 100%
because They Aren't My Lawyer, but... it's sort of relying on the common
knowledge of the community. In any case, after the first round of the
Oracle vs Google trial I think we have reasons for feeling safer (we've
just to wait for the second round).

Grant Robertson

unread,
Jul 16, 2012, 8:27:10 PM7/16/12
to java...@googlegroups.com


On Monday, July 16, 2012 1:12:55 AM UTC-7, fabrizio.giudici wrote:
On Sun, 15 Jul 2012 17:45:09 +0200, Grant Robertson <gra...@gmail.com>  
wrote:
>Would this "bundling" be counted as "linking" under the GPL
> and require all my code to be GPL? 

No, you don't. OpenJDK is released trough a variant GPL + ClassPath  
Exception (CPE), which means that "linking" to the runtime API doesn't  
trigger the virality of GPL. You don't need to provide source code, just  
keep the standard README, LICENSE etc... of OpenJDK where the source URL  
is linked and you're fine.

According to the OpenJDK FAQ [http://openjdk.java.net/faq/], "almost all of the virtual machine" is under GPL2, WITHOUT the CPE. This particular followup question (just a few lines up) was about "bundling" the virtual machine into an application as you suggested. However, the answer you give only applies to just the Java code and the libraries.

 
> Would it be possible to run NetBeans on Oracle's JRE while still writing
> Java code based on the OpenJDK. I remember from school that NetBeans  
> allows
> one to specify which version of the JDK to compile with. Can one simply  
> add
> the OpenJDK to that list and then choose between OpenJDK and Oracle's  
> JDK?

Yes. NetBeans can manage multiple Java platforms associated to each  
project.

But can it manage the OpenJDK platform, specifically? THAT was my question. I guess I will just have to find out for myself.

 
Well, my point is: OpenJDK is used by a lot of people and it's part of the  
Linux distros (they don't carry any longer the Oracle bits). This means  
that a number of license experts have done their homework and presume  
OpenJDK is fine to be redistributed.

In point of fact, it only means that OpenJDK fits with a model that Linux distribution providers are comfortable with. Considering that Linux is GPL, it seems to me that Linux distribution providers would not have as much trouble with the viral nature of the GPL'd parts of OpenJDK. In addition, a Linux distribution that contains the OpenJDK JRE only does so via including it in an archive for separate installation, NOT as part of a program. The former is specifically addressed in the GPL, while the latter is a bit of a gray area. Which is why I asked the question, which I will restate mor explicitly:

Would bundling the OpenJDK JRE into an application, to be run ONLY as part of that application, then constitute "linking" as far as the GPL is concerned, thus triggering the copy-left provisions of GPL because "almost all of the virtual machine" (the JRE) is full GPL?

Grant Robertson

unread,
Jul 16, 2012, 8:58:58 PM7/16/12
to java...@googlegroups.com
This is a generic answer to all those people who jump in on EVERY question about open-source licensing and just say, "go see a lawyer":

SERIOUSLY?  I'm just a guy who is thinking about writing some software in a popular programming language. But before I get started I need to go find a lawyer who specializes in open-source licensing and pay some serious bucks just so they can give me what will essentially be a guess as to what would happen if any of this went to court. SERIOUSLY?   REALLY?


There are a lot of people writing a lot of Java code. The people who started this Google Group claim to actually know a lot about it.  Someone HAS to actually know the answers to my questions. My questions are more about policy than about law:
  • Does Oracle require people to register as Licensees just to distribute their own Java Code? The statement on Oracle's web site is confusing because they appear to have used the word "compatible" when they meant to say "functionally identical"?
Seriously, not a single soul in here knows the answer to that one? Or they know, but I have to go have a lawyer tell me what Oracle's policy is? Fortunately, other people elsewhere have given me a clean and unambiguous answer. (Which I will NOT reveal here, because actual information is apparently forbidden in this group.)

My other question was about the accuracy of documentation:
  • Now that Oracle has rolled (or is planning to roll) "commercial features" into non-commercial (supposedly free) distributions of Java, will it be easy for me to spot those features so I can avoid using them?
Again, not a single response that even addresses the actual question. Just calls to "go all open source all the way" and "go see a lawyer." Do you guys go see a lawyer before you go to the bathroom? Why do you even respond at all? Do you sit down and think, "How can I obfuscate information and frustrate people as much as possible today?"

If someone had just said, "I'm sorry, I don't know." that would have been better than all the time-wasting, rabbit-hole digging, obfuscation.

Needless to say, I will not be participating in this group again.

Ricky Clarkson

unread,
Jul 16, 2012, 9:17:17 PM7/16/12
to java...@googlegroups.com

For what it's worth, I gave normal information in my first answer but you seemed to be looking for problems in specific bits of Oracle text so I thought you were unlikely to be happy without a lawyer's view.  Most of us here made our decisions based on the original Sun licences and as long as the licences don't actually worsen we're probably not going to be familiar with the fine print.

I think you've reacted pretty unfairly after many members of this group have put effort in communicating with you.

I thank you for pointing me at OpenJFX, a project I'll start following.

--
You received this message because you are subscribed to the Google Groups "Java Posse" group.
To view this discussion on the web visit https://groups.google.com/d/msg/javaposse/-/4zruzUP-7EwJ.

Fabrizio Giudici

unread,
Jul 17, 2012, 3:29:47 AM7/17/12
to java...@googlegroups.com, Grant Robertson
On Tue, 17 Jul 2012 02:27:10 +0200, Grant Robertson <gra...@gmail.com>
wrote:

> According to the OpenJDK FAQ [http://openjdk.java.net/faq/], "almost all
> of the virtual machine" is under GPL2, WITHOUT the CPE. This particular
> followup question (just a few lines up) was about "bundling" the virtual
> machine into an application as you suggested. However, the answer you
> give only applies to just the Java code and the libraries.

You aren't linking against the VM. The VM is basically a process that runs
and reads your code.

> Seriously, not a single soul in here knows the answer to that one? Or
> they know, but I haveto go have a lawyer tell me what Oracle's policy
> is? Fortunately, other people elsewhere

It's not that we can't answer, in fact we do. The point is that we can't
give you a professionally valuable opinion that can be used in a trial.

> have given me a clean and unambiguous answer. (Which I will NOT reveal
> here, because actualinformation is apparently forbidden in this group.)

I don't see the point of this alleged conspiracy.

Cédric Beust ♔

unread,
Jul 17, 2012, 3:48:09 AM7/17/12
to java...@googlegroups.com
On Mon, Jul 16, 2012 at 5:58 PM, Grant Robertson <gra...@gmail.com> wrote:
Seriously, not a single soul in here knows the answer to that one? Or they know, but I have to go have a lawyer tell me what Oracle's policy is? Fortunately, other people elsewhere have given me a clean and unambiguous answer. (Which I will NOT reveal here, because actual information is apparently forbidden in this group.)

Seriously?
 
If someone had just said, "I'm sorry, I don't know." that would have been better than all the time-wasting, rabbit-hole digging, obfuscation.

Sure, let's have all 600+ people of the group respond to you to say "I don't know", what a great idea.

Or the group members could, you know, just not answer if they don't know.

-- 
Cédric

Russel Winder

unread,
Jul 17, 2012, 6:50:23 AM7/17/12
to java...@googlegroups.com
On Mon, 2012-07-16 at 17:58 -0700, Grant Robertson wrote:
> This is a generic answer to all those people who jump in on EVERY question
> about open-source licensing and just say, "go see a lawyer":
>
> SERIOUSLY? I'm just a guy who is thinking about writing some software in a
> popular programming language. But before I get started I need to go find a
> lawyer who specializes in open-source licensing and pay some serious bucks
> just so they can give me what will essentially be a guess as to what would
> happen if any of this went to court. SERIOUSLY? REALLY?

Yes seriously. You asked a question about the law. A bunch of
programmers are not the people who will have the answer to your
question, they'll just have a collection of anecdotes about their own
experiences.

If you are guy thinking about writing code then be a programmer and
write code. You only need to worry about licences if you are a sales
person, or on the board of a company, or a sole trader about to sell
code. Then you have a problem.

Having been round this loop three times as CTO/Director of startups, and
as expert witness in a number of cases relating to copyright and
licencing I can tell you that programmers generally do not appreciate
how the law actually works – as opposed to how they would like it to
work. This makes programmer's anecdotes bad base data on which to
formulate a guess about a legal opinion.

If you have a question about your health, you see a medic not a lawyer.
If you have a question about legal documents and the law, you see a
lawyer not a medic.

> There are a lot of people writing a lot of Java code. The people who
> started this Google Group claim to actually know a lot about it. Someone
> HAS to actually know the answers to my questions. My questions are more
> about policy than about law:

No they are not. You asked about the applicability of legal licences in
a given situation. Do you ask a lawyer or a medic whether to use Merge
Sort or Quicksort, no you ask someone well versed in analysis of
algorithms – which sadly excludes many programmers as well as medics and
lawyers. Of course all programmers should know analysis of algorithms,
but they don't.

> - Does Oracle require people to register as Licensees just to distribute
> their own Java Code? The statement on Oracle's web site is confusing
> because they appear to have used the word "compatible" when they meant to
> say "functionally identical"?

Either do whatever you want, i.e. just get on with writing software, or
get a legal opinion to a legal question.

> Seriously, not a single soul in here knows the answer to that one? Or they
> know, but I have to go have a lawyer tell me what Oracle's policy is?
> Fortunately, other people elsewhere have given me a clean and unambiguous
> answer. (Which I will NOT reveal here, because actual information is
> apparently forbidden in this group.)

The people who gave you a clean and unambiguous answer are either Oracle
lawyers or fooling themselves. Which authorities did they quote in order
to back up this claim to clean and unambiguous answer. If the answer was
clean and unambiguous, why come back to this forum to slag off members
of the email forum?

> My other question was about the accuracy of documentation:
>
> - Now that Oracle has rolled (or is planning to roll) "commercial
> features" into non-commercial (supposedly free) distributions of Java, will
> it be easy for me to spot those features so I can avoid using them?
>
> Again, not a single response that even addresses the actual question. Just
> calls to "go all open source all the way" and "go see a lawyer." Do you
> guys go see a lawyer before you go to the bathroom? Why do you even respond
> at all? Do you sit down and think, "How can I obfuscate information and
> frustrate people as much as possible today?"

I think you failed to read the answers that were given.

If I am executing a binding legal contract then I see a lawyer. If I am
going to worry about issues to do with selling and distribution of code
where GPL, ASL, etc. are involved then I get a legal opinion – and yes I
have done this in the past, twice.

If I need to go for a piss, I just go for a piss.

Why did you not read the answers given to you instead of replicating
your questions in ever increasing aggressive tones. People on this list
were trying genuinely to help you, your approach to the list and members
of this list have just made you look like a disrespectful trolling
a######.

> If someone had just said, "I'm sorry, I don't know." that would have been
> better than all the time-wasting, rabbit-hole digging, obfuscation.
>
> Needless to say, I will not be participating in this group again.

Good as it seems all you have done is slag of people trying give you
genuine and reasonable advice. People have spend a good few
dollar/pounds of time giving you free and sensible advice, and you are
just dissing them.
signature.asc

Trae Barlow

unread,
May 22, 2013, 10:59:37 PM5/22/13
to java...@googlegroups.com
Thanks a-lot for witholding that informatoin. I'm a person struggling with the same questions as you have, I even agree with some of your opinions on this group. BUT, you're on the front page of goolgle for "linux - commercial license to use java". So bravo, by not posting the answer to your own question you've wasted about 30 minutes of my time reading your thread and responses only to find out "i found the answer but i'm not telling".

Trae Barlow

unread,
May 22, 2013, 11:02:56 PM5/22/13
to java...@googlegroups.com, gra...@gmail.com
Thanks a lot. I read all your replies to this thread and I even agree with some of your opinions on this group. If they didn't know they should have just let your thread die off and fade away. Now it's on the #1 page of Google for "linux commercial license to use java" and because you chose to withold the information on Oracle's policy, I just wasted 30 minutes reading your angry replies. What a complete shit-thread this turned out to be.

Ricky Clarkson

unread,
May 24, 2013, 5:32:52 PM5/24/13
to java...@googlegroups.com

I really hope that's directed at the other guy and not me. :)

To unsubscribe from this group and stop receiving emails from it, send an email to javaposse+...@googlegroups.com.

To post to this group, send email to java...@googlegroups.com.

Grant Robertson

unread,
Jun 6, 2018, 11:35:47 PM6/6/18
to Java Posse
tl;dr: You have to go to extra trouble to actually use those commercial features, and you will definitely know you are using them. So there really isn't anything to worry about.

After almost 6 years, I finally have an actual answer to this question. Hell, until tonight, I still didn't have a definitive answer. But, because I am finally starting a Master's in CS, I decided to look for an answer to this question and this post (which I had entirely forgotten about) turned up as the fourth match. After rereading all of this post, I noticed that others have complained that I didn't answer the question. Hell, I now don't think I had the answer I thought I had. Otherwise I wouldn't have still been confused tonight. 

So, I dug around some more and found a couple of articles that explained the situation pretty clearly:
I gotta say, I am now even more pissed off at this Java Posse community. The answer was so simple and yet no one could or would provide it. Instead they spewed all kinds of bullshit, beating around the question but never actually answering it. All in the interest of appearing to be experts in the field. So.... the only reason I am answering this question here is for the sake of all those poor people who find this post, listed ABOVE the actual answer in Google's search results. Seriously, this seems to be a solid indication that Google's search engine has never been that damned good. If this post, with no actual answer shows up in the top results, then something is seriously wrong with Google's algorithms. 


Reply all
Reply to author
Forward
0 new messages