将Apache Software License 2.0应用于项目时,是否需要源文件中的许可证标头?[关闭]


15

通读Apache Software License 2.0附录,我不清楚现在到底需要做什么:

附录:如何将Apache许可证应用于您的工作

要将Apache许可证应用于您的工作,请附上以下样板声明,并用括号“ []”括起来的字段替换为您自己的标识信息。(不包括方括号!)文本应包含在文件格式的相应注释语法中。我们还建议在与版权声明相同的“印刷页面”中包含文件或类名称以及用途说明,以便在第三方档案中更容易识别。

进一步说明:我目前正在github上的一个开源项目中做出贡献,在该项目中做出了根据ASL2.0进行许可的决定。在最新提交中,许可证文本已添加LICENSE到根目录。

现在最有趣的部分是:要在Apache Software License下完全许可代码,还需要做些什么。具体来说:什么是“工作”?在项目中的每个源文件中都必须包含样板声明吗?

我认为应该可以将通知添加到已经存在的通知中README,就像我在其他开源项目中看到的那样。类似于以下内容:

执照:

除非另有明确说明,否则此存储库中的所有文件均根据Apache软件许可2.0许可[在此处插入样板声明]

我认为应该没问题,因为Apache Source Header政策(即使仅适用于Apache Software Foundation拥有的项目)指出:

每个原始源文档(代码和文档,但不包括LICENSE和NOTICE文件)在顶部包含一个简短的许可证标头。如果分发中包含CLA,CCLA或软件授权未涵盖的文档(例如第三方库),请参阅策略指南。


  1. 每个源文件应包括以下许可证标头-请注意,标头中不应包含版权声明:

具体地说,这里的“应该”让我认为,对于根据ASL许可的项目的每个源文件,每个文件中的许可证标头不是强制性的。


1
您是否对在每个源文件中仅包含标头有异议?
罗伯特·哈维

那么这是一个麻烦:(另外一个可能的重新授权与那个让不必要的复杂,我有一个个人的“恩怨”反对牌头。
Vogel612

2
嗯 许可证更改是对所有文件的查找和替换操作,在任何IDE中都是值得的。
罗伯特·哈维

您还可以在每个文件中加入简短说明,例如“此项目已获得XYZ许可。有关详细信息,请参阅可在此项目档案库的基础上找到的LICENSE文件”或类似的词语。
布兰登2015年

2
不,这是没有必要的:apache.org/dev/apply-license.html#copy-per-file但由于朱以下规定,如果一个文件被查看或单独重复使用,许可证将是显而易见的
斯蒂恩

Answers:


18

不,没有必要在每个文件中包含许可证。这是推荐的做法,因为它可以确保如果某人正在查看项目中的文件与其他文件隔离,则他们将能够识别该文件的使用条款,但最后,只要您执行某项操作即可从法律上讲,这清楚了预期的许可条款是什么。

(请注意,这不是法律建议;如果这很重要,则应寻求您所在辖区的律师的建议,等等。)


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.