17

I develop an android application and in my app I use a libary (jar) that I download from the internet. This jar is open-source under the "GNU General Public License v2". I tried to read the text of the license but had difficulty understanding it.

My question is: can I use this libary without changing nothing in the jar in a commercial application? I will be making profit from selling my app which uses this GPL-ed .jar file.

If possible, I would like to avoid converting my application to open-source.

user13415
  • 273

3 Answers3

21

No, you can't. If the library is GPL you can't ship it with you no-GPL application.

But you can still make you application GPL, bacause you don't need to "open source" your software. You can still sell your software as long as everyone who buys it can access the source code. I.e. by downloading them from a protected (or even public) location or by shipping the source with the app. There is only one problem with this: Everyone who has the source code (in the above case: everyone who bought the software) has the right to redistribute it any way the GPL allows. This means you can't prevent them from making the source public or forking your app.

Martin
  • 1,005
21

GPL Required you to release source code for your distribution (In case of Full GPL but not lesser-GPL which is much more common in libraries)

But do not mix up with the following concepts.

  • You can still distribute any work for a fee thus making profit. (As long as you ship the binary with the source code)
  • You don't have to provide source code, if you don't ship/distribute any binaries, in case of SaaS (Software as a Service)
7

IANAL, but my understanding is no. The GPL is viral in nature (copyleft) so if you use or extend GPL-ed software then you are required to GPL your derived work.

However, most libraries are intended to be reused and the GPL license doesn't make sense. That is why there is the LGPL or "Lesser GNU Public License". This license allows you to use GPL-ed code in a library setting without requiring your application to be GPL-ed. If the JAR file is distributed under the LGPL you should be OK.

Chris Smith
  • 5,258