Answers:
简短的答案是,如果您在项目中使用开源软件,则必须满足该许可证中列出的所有要求。
BSD和Apache 2.0都不是“病毒”许可证,这意味着AFAIK不会对包含它的其他源代码提出任何要求。这也意味着与GPL不同,您不是根据BSD或Apache许可发布“产品”,而是根据作者根据其发布许可的许可来许可每个文件或代码部分。
因此,您可以有一个项目,其中一个模块是BSD,一个模块是Apache,而且我认为没有理由为什么您不能分发它,只要您对此有明确的了解。注意IANAL。
您是否有权获取Apache许可的代码并将其重新许可为BSD?我对此表示高度怀疑。我相信Apache对它的限制要比BSD多。当然,您必须保留原始的版权声明,但我也相信在发布更改时必须做些额外的事情,并且您不能(或至少不应该)通过更改执照。
您可以在Apache v2.0许可的代码库中包括(扩展)BSD许可的代码,包括由Apache Software Foundation管理的源代码。
为了成为Apache产品的依存关系,哪些许可证被认为与Apache License 2.0相似?Apache产品中可能包含以下许可的作品:
•BSD(无广告条款)。包括变体:
◦BSD 2子句
◦BSD 3句
请咨询您的律师以获取风险和合规建议。
简短的回答:是的。Apache软件许可在很大程度上基于BSD和MIT样式许可。一段时间以前,我在处理Apache代码时的共同理解是,您可以合并BSD,MIT和类似的许可库,但对于基于GPL的许可却无法做到这一点。
如果您还有其他疑问,我强烈建议您直接转到Apache:
他们是一群真正的好人,而且非常合理。
最好的答案可以在apache第三方许可政策中找到。当将libs与其他许可证一起使用时,这是所有apache项目必须遵循的策略。如您所见,BSD在A类-授权许可证中列出。因此,使用此许可证应该没有问题。您还可以在此处找到其他许可证的策略,这很有帮助。实际上,我认为如果您在公司工作,Apache策略对于您自己的许可策略也是一个不错的起点。
这是一个非常有用的网站:
在您的情况下: apache-2.0和BSD。
在他们两个中,您必须:
但是在Apache中,与BSD不同,您必须:
UPD
该信息取自tldrlegal.com
正如他们所注意到的:
这只是全文的简短摘要。TLDRLegal上的任何信息都不是法律建议。
请查看@DmitryAlexandrov评论中的讨论以获取更多信息。