Java 使用GNU Lesser通用公共许可证下的库时对我的项目施加的限制

Java 使用GNU Lesser通用公共许可证下的库时对我的项目施加的限制,java,licensing,lgpl,Java,Licensing,Lgpl,我使用的是一个开放源码库,它是根据GNU Lesser General Public License授权的。() 该库非常简单,只需读取和写入csv文件。我的JSP正在使用它进行输入/输出 下载包含以下文件: src AllTests.java com csvreader CsvReader.java CsvWriter.java build.bat build.xml javacsv.jar javadoc.bat javadoc.xml 我是被限制只使用jar文件还是被允许将源代码嵌

我使用的是一个开放源码库,它是根据
GNU Lesser General Public License
授权的。()

该库非常简单,只需读取和写入csv文件。我的JSP正在使用它进行输入/输出

下载包含以下文件:

  • src
    • AllTests.java
    • com
    • csvreader
    • CsvReader.java
    • CsvWriter.java
  • build.bat
  • build.xml
  • javacsv.jar
  • javadoc.bat
  • javadoc.xml
我是被限制只使用jar文件还是被允许将源代码嵌入到我的项目中

使用此库是否会限制我的项目?我需要做什么来遵守许可证的条款

如果JSP仅用于内部使用,那么限制是否会有所不同


如果这是一个桌面应用程序,限制会有所不同吗?

您不仅限于使用
.jar
,因此您可以将
.java
文件放入您自己的项目中,但是,您对这些
.java
文件所做的任何修改都必须在任何用户的请求下以源代码形式分发

您还必须提供允许用户在组合应用程序中替换这些文件的最低要求。这意味着,您可以将使用LGPL工作的代码分发为编译的
.class
文件,这样用户就可以针对自己版本的LGPL工作使用您的代码。这将禁止您“保护”生成的程序,以尝试和防止此类修改


这些许可条款仅适用于您分发给其他人的应用程序,因此,如果您使用该应用程序纯粹是为了内部使用,您可以随心所欲。任何发行版都要求您遵守LGPL的条件。

我是否需要指定我在LGPL下使用某些库的位置?是的。根据LGPL第3节<代码>a)在目标代码的每一份副本上都要给出一个显著的通知,说明该库在其中使用,并且该库及其使用受本许可证的保护。b) 请将目标代码与GNU GPL和本许可证文档的副本一起提供。总结一下。我可以自由使用库,但我必须:a)将源代码(库)提供给我将项目提供给的任何人(应他们的要求),b)提供项目文档,说明我正在使用LGPL下的库。还有其他要求吗?我投票结束这个问题,因为它是关于许可或法律问题,而不是编程或软件开发。有关详细信息,请参阅。