最近,我遇到了一种情况,我想在开源许可下发布一个简单的JavaScript软件。
但是,我退出了它,因为该软件包含了几个在不同许可下发布的开源组件。
在什么许可下应该发布捆绑软件(考虑到各种第三方组件在代码级别被混合到软件中)?
发布于 2014-08-21 08:59:22
如果捆绑包的部分处于不允许子许可的许可下(大多数许可证都是这样),那么您就不能在单个许可证下分发该包。
在这种情况下,最好的选择是明确声明软件的不同部分是在不同的许可下分布的,并明确指出哪些部分属于哪个许可(如果需要的话,可以确定单个功能)。
如果单个文件包含处于不同许可证下的部分,也可以使用此方法。
这是在这样的假设下:许可证是相互兼容的,因此允许您分发软件,并且包形成一个软件(它不仅仅是一个独立软件的方便集合)。
如果您有一组独立的软件,那么根据版权法,这个包不被认为是作品,因此没有自己的版权。
发布于 2014-08-21 09:47:36
这取决于执照。
有一些许可证,如MIT或BSD,允许您将它们包含在以不同条款授权的软件中,只要您只是将他们的版权信息包含在用户可以阅读的某个地方。
另一方面,也有像GPL这样的许可证,这使得不可能将库用于未在GPL下授权的软件。
介于两者之间的是LGPL,您可以在非GPL项目中使用它,但前提是库本身没有更改,并且保持在GPL之下。
有关更多详细信息,请参阅所使用库的确切许可条款。
https://softwareengineering.stackexchange.com/questions/253968
复制相似问题