Can Java code EVER be GPLd, at all?

Richard Stallman rms at gnu.org
Mon Nov 15 17:01:00 UTC 1999


    The problem is, people on this list are searching for hard lines.  I see
    arguments like 'but if that is true, then by logical extension, every
    shell script is a derived work of bash'.  There are no hard lines.
    'Derived work' is an important concept, but not one that can always be
    perfectly delineated.

That is right.  There are no hard lines.

Programmers tend to look for a criterion based on which technical
methods are used.  I think that is the wrong approach--that any purely
technical criterion has to be a bad one.  Judges are not programmers,
and I don't think courts will choose a purely technical criterion; I
would urge them not to.  (Of course, none of us can be sure what
courts will decide.)

    If an application 'A' uses a library 'B' in what might be described as an
    'essential' way, then, irrespective of the physical mechanism of linkage
    (static/dynamic/run-time/compile-time/corba) I would expect 'A' to be
    considered as a derived work of 'A'.  Especially if 'A' is distributed
    together with 'B', and especially if 'A' won't function without 'B'.

That's the FSF's position.

    So, in the java example, if you GPL your java library, and a commercial
    company distributes a java program using it, then I would expect the GPL
    to apply - even though the technicalities of linking differ from the C
    case.

That is what I would argue for.

So I think it is meaningful to release a Java program either under the
GPL or the LGPL, and the consequences are basically the same as for a
C program: if you use the LGPL for your Java program, it can be called
by non-free programs, but if you use the GPL, it cannot be.








More information about the License-discuss mailing list