I am about to finish a Java application that has several libraries included like log4j and jdom. Now I am very confused about the many license types there are. Most of them include something like this:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

So I guess everything is ok as long as this jar includes the license.txt ?

What happens if I would compile the program ahead-of-time into a Windows native executable? The end-user would have no access to this jar. Do I have to make some sort of list of what libraries I used and how the user can obtain the respective license file?

有帮助吗?

解决方案

Disclaimer: IANAL

"Open Source Software" means that you must give a copy of the sources to the user in some form. So if you include OSS in your product, you need to comply to the rules in the license.

For example, if you include a single GPL library into your code, then your product must be released as GPL software (i.e. with full source, under a GPL license including the permission to change the sources and create derivatives).

Most frameworks have a less strict license. For many OSS licenses, it's enough when you include a copy of the original license, name the library in your documentation in a prominent place (+ URL of the home page) with the name of the license it uses.

For example:

Used Open Source Software in This Product

This product uses the following open source software:

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top