对于开源协议的使用疑惑

讨论 · plusend · 于 发布 · 最后由 plusend回复 · 536 次阅读
2571 1491357330

背景:

  1. 使用一个用 Apache License 2.0 开源的项目,更改了其中的部分代码;
  2. 我的项目想用 GNU GPLv3 开源;

问题:

  1. 引用的源代码中只有一份协议拷贝,我需要在源代码头上加上 Apache License 2.0 的声明么?
  2. 对于更改的文件,我需要怎么做,在文件头加上 Apache License 2.0 的声明么?
  3. 网上说 Apache License 2.0 对于所做的改动需要指出来,怎样做算指出来了?
  4. 这种情况还可以使用 GNU GPLv3 协议么,还是需要变更为 Apache License 2.0 呢?一个项目可以使用多种开源协议么?
共收到 2 条回复
2

没人回答,我想强行回答一波,尴尬

Apache Licence:

Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件)。需要满足的条件也和BSD类似:

  • 需要给代码的用户一份Apache Licence
  • 如果你修改了代码,需要在被修改的文件中说明。
  • 在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
  • 如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。 Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。

名词解释:

  • 协议和版权信息(License and copyright notice):在代码中保留作者提供的协议和版权信息
  • 声明变更(State Changes):在代码中声明对原来代码的重大修改及变更
  • 公开源码(Disclose Source):代码必需公开。如果是基于LGPL协议 下,则只需使用的开源代码公开,不必将整个软件源码公开
  • 库引用(Library usage):该库可以用于商业软件中
  • 责任承担(Hold Liable):代码的作者承担代码使用后的风险及产生的后果
  • 商标使用(Use Trademark):可以使用作者的姓名,作品的Logo,或商标
  • 附加协议(Sublicensing):允许在软件分发传播过程中附加上原来有的协议条款等

所以对于你第一和第二个问题就是图上的协议和版本信息声明变更,答案就是你需要。

http://www.apache.org/licenses/LICENSE-2.0.html

2571 1491357330
plusend · #2 ·

#1楼 @jixiaohua 多谢啦

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册