Skip to main content

licensing question

12 replies [Last post]
coshx
Offline
Joined: 2004-04-14

First, why I think I need to redistribute jh.jar:

My app will most likely be distributed as a jar file, which means it will be run with something on the lines of "java -jar myFile.jar". Since using the -jar option ignores the CLASSPATH environment variable and the -classpath command line argument, I am forced to either 1) know the location of jh.jar, or 2) write my own ClassLoader that tries to find it.

It seems to me that 1) is much easier, but only if I distribute jh.jar with my application.

If you know a workaround to this dilemma, please let me know.

Now, the actual question: my app is being released under the GPL, so:

1) Where do I include sun's license? Would it be enough to include it in my README file, and also in, say, a help file about licenses?

2) Would doing this violate the GPL, since I'm not releasing the source? (i don't think this is the case, but IANAL).

Thanks,
Ben

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
zander
Offline
Joined: 2003-06-13

[on GPL]

> My point is if I want to use any of this code for
> some other purpose I
> couldn't unless it was isolated.

Lets turn that around; I have (for example) JComponent.java and want to copy a significant part from it since it does what I want.
Naturally I don't want to conform to Suns licencing since that means I have to re-licence ALL my code to that licence.

Do you feel that I have a right to copy your code? Or is what happens in GPL just about the same as what happens in Suns licence.?

> Not every company may have this
> same view but it's why as the JavaDesktop community
> leader I don't recommend GPL for projects there.

If you are the copyright holder to a certain file or application you can use that in a GPL and in a closed-source application at the same time without problems. The owner of the code (aka copyright holder) has the right to re-licence its code. So your advice is probably hurting those applications that would gain more from a GPL licence.

Please don't let your fear of the unknown change other peoples minds!

Roger Brinkley

javahelp1@JAVADESKTOP.ORG wrote:

> Lets turn that around; I have (for example) JComponent.java and want
> to copy a significant part from it since it does what I want.
> Naturally I don't want to conform to Suns licencing since that means
> I have to re-licence ALL my code to that licence.
>
> Do you feel that I have a right to copy your code? Or is what happens
> in GPL just about the same as what happens in Suns licence.?

Not the same at all. Depends on the license used. With the Sun Open
source License (Netbeans license of choice) you can use it freely in
your code and it doesn't affect the License of your choice though you're
suppose to report back any changes to the code. I'm not sure what
happens with the SCSL license that is used for most of the JDK work.

Binky

********************************************************************************

You may leave the list at any time by sending message with no subject and
"SIGNOFF JAVAHELP-INTEREST" in the body to LISTSERV@JAVA.SUN.COM. Archives
are available at http://archives.java.sun.com/archives/javahelp-interest.html.
Submit bug reports at http://java.sun.com/cgi-bin/bugreport.cgi.

zander
Offline
Joined: 2003-06-13

> > Lets turn that around; I have (for example) JComponent.java and want
> > to copy a significant part from it since it does what I want.
> > Naturally I don't want to conform to Suns licencing since that means
> > I have to re-licence ALL my code to that licence.
> >
> > Do you feel that I have a right to copy your code? Or is what happens
> > in GPL just about the same as what happens in Suns licence.?
>
> Not the same at all. Depends on the license used. With the Sun Open
> source License (Netbeans license of choice) you can use it freely in
> your code and it doesn't affect the License of your choice though you're
> suppose to report back any changes to the code. I'm not sure what
> happens with the SCSL license that is used for most of the JDK work.

My bad; the thread started with the SCSL licence, and my question above was refering to that licence.

I can answer the question for you; it really is the exact same. Both licences prohibit the same copying of work. And for the same reasons. It protects the creators of the work.
For the same reason you don't want to use GPL the people that use GPL won't touch the SCSL code. :)

Chris Herborth

Roger Brinkley wrote:

> My understanding of GPL is that if you include anything that is GPL then
> everything else has to become GPL. That's what I'm referring to as the
> viral nature of GPL. As such, some companies, mine included, frown
> deeply on GPL code and limits the use of otherwise good software because
> of the licensing.

It's not quite that bad... I've been down this road before while preparing a
binary Python distribution (I wanted to include libreadline support...
libreadline is GPL instead of LGPL, thus extremely obnoxious). Python isn't
GPL'd, but it can include GPL'd parts.

Including a GPL'd library with your application means you need to:

- offer to send _anyone_who_asks_for_it_ a copy of the source for the
GPL'd parts, plus any chances you made to the GPL'd parts (I think
the GPL actually specifies ancient technology like tapes and diskettes,
but email/web/ftp distribution covers it)

- include the GPL'd parts in a form that lets the user update them
without having to go to you for assistance; with binaries, this usually
means including the GPL'd bits as shared libraries

Zealots often try to convince people that if you include GPL'd anything,
anywhere, everything needs to be GPL'd. This is nonsense, otherwise Perl,
Python, Tcl/Tk, every operating system in existence, etc. would all have to
be GPL'd or it would be "illegal" to run GPL'd software on them.

--
Chris Herborth chrish@cryptocard.com
Documentation Overlord, CRYPTOCard Corp. http://www.cryptocard.com/
Never send a monster to do the work of an evil scientist.
Postatem obscuri lateris nescitis.

********************************************************************************

You may leave the list at any time by sending message with no subject and
"SIGNOFF JAVAHELP-INTEREST" in the body to LISTSERV@JAVA.SUN.COM. Archives
are available at http://archives.java.sun.com/archives/javahelp-interest.html.
Submit bug reports at http://java.sun.com/cgi-bin/bugreport.cgi.

Roger Brinkley

Chris Herborth wrote:

> Zealots often try to convince people that if you include GPL'd anything,
> anywhere, everything needs to be GPL'd. This is nonsense, otherwise Perl,
> Python, Tcl/Tk, every operating system in existence, etc. would all have to
> be GPL'd or it would be "illegal" to run GPL'd software on them.

My point is if I want to use any of this code for some other purpose I
couldn't unless it was isolated. As such we tend to turn away from GPL
code, or at best have to jump through so many legal hoops that it isn't
worth my time to to look at GPL code. Not every company may have this
same view but it's why as the JavaDesktop community leader I don't
recommend GPL for projects there.

binky

********************************************************************************

You may leave the list at any time by sending message with no subject and
"SIGNOFF JAVAHELP-INTEREST" in the body to LISTSERV@JAVA.SUN.COM. Archives
are available at http://archives.java.sun.com/archives/javahelp-interest.html.
Submit bug reports at http://java.sun.com/cgi-bin/bugreport.cgi.

Wade Chandler

Roger Brinkley wrote:
> Chris Herborth wrote:
>
>
>> Zealots often try to convince people that if you include GPL'd anything,
>> anywhere, everything needs to be GPL'd. This is nonsense, otherwise
>> Perl,
>> Python, Tcl/Tk, every operating system in existence, etc. would all
>> have to
>> be GPL'd or it would be "illegal" to run GPL'd software on them.
>
>
> My point is if I want to use any of this code for some other purpose I
> couldn't unless it was isolated. As such we tend to turn away from GPL
> code, or at best have to jump through so many legal hoops that it isn't
> worth my time to to look at GPL code. Not every company may have this
> same view but it's why as the JavaDesktop community leader I don't
> recommend GPL for projects there.
>
> binky
>
> ********************************************************************************
>
>
> You may leave the list at any time by sending message with no subject and
> "SIGNOFF JAVAHELP-INTEREST" in the body to LISTSERV@JAVA.SUN.COM. Archives
> are available at
> http://archives.java.sun.com/archives/javahelp-interest.html.
> Submit bug reports at http://java.sun.com/cgi-bin/bugreport.cgi.
>
>
What about the LGPL?

Wade

--
Wade Chandler
Red-e Set Grow, LLC
Phone: 336-777-0075 x1705
Email: wchandler@redesetgrow.com
www.redesetgrow.com

********************************************************************************

You may leave the list at any time by sending message with no subject and
"SIGNOFF JAVAHELP-INTEREST" in the body to LISTSERV@JAVA.SUN.COM. Archives
are available at http://archives.java.sun.com/archives/javahelp-interest.html.
Submit bug reports at http://java.sun.com/cgi-bin/bugreport.cgi.

zander
Offline
Joined: 2003-06-13

import law.ianal.GeneralDisclaimer;

> Section 2.iv of the javahelp supplemental binary code
> license agreement says that i can "(iv) only
> distribute the Software subject to a license
> agreement that protects Sun's interests consistent
> with the terms contained in this Agreement", which to
> me means I can't release it under the GPL (which
> wouldn't be possible anyway since i'm not allowed to
> distribute the source).
>
> So, as far as I see, if I'm releasing my
> source/binary code under the gpl, i would need to
> release sun's part under a separate license (sun's).
> Please correct me if my logic is incorrect.

You are mistaken about some subtle points.
The licence agreement your sourcecode is under does not effect the libraries you use. After all; you could write your GPL software on top of the closed-source JVM.
If you don't package your jar in the same jar as the javahelp jar nobody will question that its a different package.
I suggest to adjust your software so if the javahelp jar is not found it will not fail; just bark.

Then the Section 3.iv;
> Obviously, redistributing them under any lesser license agreement than Sun's would not protect Sun's interests.
This is indeed how it should be read (a lawyer could, so you should to).
I suggest to let your user download the javaHelp package from the Sun site. And search for an alternative library that is less cumbersome.

> > I know I don't care for GPL as
> > a license since
> > it's so viral in nature.
>
> I'm not sure what you mean by this.

Binky probably heard a lot of FUD about the GPL as the GPL is not more viral then the licence Sun uses.
You can read the GPL code; you can re-distribute the code; you can use it in your private projects (even in between Sun propriatairy code, as long as its never released) and you can get ideas from it.

The only thing you can't do is use GPLd code, extend or adjust it and then release it under another licence. I believe this is quite similar to the licence Sun uses.

Chris Herborth

javahelp1@JAVADESKTOP.ORG wrote:

> 2) Would doing this violate the GPL, since I'm not releasing the source? (i don't think this is the case, but IANAL).

Absolutely not. You can release GPL'd software that uses non-GPL'd
libraries (in this case, the JavaHelp JAR) as long as it's set up so you can
update the parts independantly (the parts are dynamically loaded).

--
Chris Herborth chrish@cryptocard.com
Documentation Overlord, CRYPTOCard Corp. http://www.cryptocard.com/
Never send a monster to do the work of an evil scientist.
Postatem obscuri lateris nescitis.

********************************************************************************

You may leave the list at any time by sending message with no subject and
"SIGNOFF JAVAHELP-INTEREST" in the body to LISTSERV@JAVA.SUN.COM. Archives
are available at http://archives.java.sun.com/archives/javahelp-interest.html.
Submit bug reports at http://java.sun.com/cgi-bin/bugreport.cgi.

Roger Brinkley

Ben wrote:

> First, why I [i]think[/i] I need to redistribute jh.jar:
>
> My app will most likely be distributed as a jar file, which means it
> will be run with something on the lines of "java -jar myFile.jar".
> Since using the -jar option ignores the CLASSPATH environment
> variable and the -classpath command line argument, I am forced to
> either 1) know the location of jh.jar, or 2) write my own ClassLoader
> that tries to find it.
>
> It seems to me that 1) is much easier, but only if I distribute
> jh.jar with my application.
>
> If you know a workaround to this dilemma, please let me know.

Install the jh.jar in the jre/lib/ext directory. Note that on Solaris
and JavaDesktop there are installations for the java runtime that do this.

>
> 1) Where do I include sun's license? Would it be enough to include it
> in my README file, and also in, say, a help file about licenses?

Warning I'm not a lawyer and this isn't an official answer.
I'm not sure you need to include the license agreement. It doesn't say
that you do in the redistribution part of the current message.

> 2) Would doing this violate the GPL, since I'm not releasing the
> source? (i don't think this is the case, but IANAL).

I don't have any idea. I know I don't care for GPL as a license since
it's so viral in nature.

Binky

********************************************************************************

You may leave the list at any time by sending message with no subject and
"SIGNOFF JAVAHELP-INTEREST" in the body to LISTSERV@JAVA.SUN.COM. Archives
are available at http://archives.java.sun.com/archives/javahelp-interest.html.
Submit bug reports at http://java.sun.com/cgi-bin/bugreport.cgi.

coshx
Offline
Joined: 2004-04-14

Binky Wrote:

> Warning I'm not a lawyer and this isn't an official
> answer.
> I'm not sure you need to include the license
> agreement. It doesn't say
> that you do in the redistribution part of the current
> message.

Section 2.iv of the javahelp supplemental binary code license agreement says that i can "(iv) only distribute the Software subject to a license agreement that protects Sun's interests consistent with the terms contained in this Agreement", which to me means I can't release it under the GPL (which wouldn't be possible anyway since i'm not allowed to distribute the source).

So, as far as I see, if I'm releasing my source/binary code under the gpl, i would need to release sun's part under a separate license (sun's). Please correct me if my logic is incorrect.

> I know I don't care for GPL as
> a license since
> it's so viral in nature.

I'm not sure what you mean by this. According to the GPL, it should be very obvious when you download or install software if it is released under the GPL, and even if you do [i]accidently[/i] base your source on a GPL'd source (if you just rely on a GPL'd component, you're not necessarily making a derivative work, and this in many cases is acceptable) the only legal recourse the copyright holder has is to make you 1) remove the component you copied / rewrite it, or 2) switch your license to the GPL.

I believe it's the second option that makes people call this license viral. But it's an option that doesn't even exist under a lot of licenses. Take sun's binary code license for example. If I make a derivative work of javahelp (i modify the sources and recompile) and then redistribute, I do not have any options, because I am violating copyright law.

As another example, my application is plugin-based, and in fact, the plugins provide most of the functionality. Someone can release a plugin under a very restrictive license if they see fit, and this does not violate the GPL (because it's not a derivative work. it's like a non-gpl'd program running on a gpl'd operating system).

Furthermore, even though I'm distributing the application freely, someone could modify a few files (or even make no modifications whatsoever), and sell the package for as much money as they want, as long as they distribute the modified source along with the binary, don't remove the license, and give the original authors credit.

Anyway, I apologize for the offtopic rant.

-Ben

Roger Brinkley

javahelp1@JAVADESKTOP.ORG wrote:

> Binky Wrote:
>
>
>> Warning I'm not a lawyer and this isn't an official answer. I'm not
>> sure you need to include the license agreement. It doesn't say that
>> you do in the redistribution part of the current message.
>
>
> Section 2.iv of the javahelp supplemental binary code license
> agreement says that i can "(iv) only distribute the Software subject
> to a license agreement that protects Sun's interests consistent with
> the terms contained in this Agreement", which to me means I can't
> release it under the GPL (which wouldn't be possible anyway since i'm
> not allowed to distribute the source).
>
> So, as far as I see, if I'm releasing my source/binary code under the
> gpl, i would need to release sun's part under a separate license
> (sun's). Please correct me if my logic is incorrect.
>

Wrong section read the section on redistributable binaries.

>> I know I don't care for GPL as a license since it's so viral in
>> nature.
>
>
> I'm not sure what you mean by this.

My understanding of GPL is that if you include anything that is GPL then
everything else has to become GPL. That's what I'm referring to as the
viral nature of GPL. As such, some companies, mine included, frown
deeply on GPL code and limits the use of otherwise good software because
of the licensing.

Binky

********************************************************************************

You may leave the list at any time by sending message with no subject and
"SIGNOFF JAVAHELP-INTEREST" in the body to LISTSERV@JAVA.SUN.COM. Archives
are available at http://archives.java.sun.com/archives/javahelp-interest.html.
Submit bug reports at http://java.sun.com/cgi-bin/bugreport.cgi.

coshx
Offline
Joined: 2004-04-14

Ben Wrote:

> > Section 2.iv of the javahelp supplemental binary code license
> > agreement says that i can "(iv) only distribute the Software subject
> > to a license agreement that protects Sun's interests consistent with
> > the terms contained in this Agreement", which to me means I can't
> > release it under the GPL (which wouldn't be possible anyway since i'm
> > not allowed to distribute the source).
> >
> > So, as far as I see, if I'm releasing my source/binary code under the
> > gpl, i would need to release sun's part under a separate license
> > (sun's). Please correct me if my logic is incorrect.

To Which Binky Replied:
> Wrong section read the section on redistributable
> binaries.

Okay, Section 3.iv of the supplemental license terms states that you may redistribute the redistributables provided that "you only distribute the
Redistributables pursuant to a license agreement that
protects Sun's interests consistent with the terms contained in the Agreement".

Obviously, redistributing them under any lesser license agreement than Sun's would not protect Sun's interests.

So it seems that the only way I can redistribute a redistributable and not be held accountable should my end-user, say, reverse engineer it, would be to make sure that they read and agree to sun's license itself?