详细介绍 Apache Licene 2.0 协议

红薯 发布于 2009/11/30 21:20
阅读 167K+
收藏 51

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

  1. 需要给代码的用户一份Apache Licence
  2. 如果你修改了代码,需要在被修改的文件中说明。
  3. 在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
  4. 如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。

Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。

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

更多开源协议介绍

加载中
0
Honghe
Honghe
想往代码里加apache协议,不知具体怎么加
LinWeijing
LinWeijing
在 README 里面声明就好了
0
RAY_STONE
RAY_STONE
1 比如说A现在做一个商业项目要用到Apache,A从网上直接down下来,放到这个项目里用于商业目的,可以吗?如果A是down下来Apache的源码,自己编译后用于商业目的,可以吗?这两种方式A都不用付任何费用吧? 
  
2 A down到了Apache(或者Maven,Lucene等)的源码,同时A又对源码进行了修改,然后用于商业用途,比如用到了A的商业项目或者集成到A自己的产品中出售。这样是否违反了Apache License? 
  
3 A是否可以为他修改之后的作品申请版权或者专利呢,就是说A是否对他修改后的作品拥有版权?如果B把A修改的那部分用于商业用途,A是否可以收费呢?如果B在A修改的代码基础之上又进行了修改,并用于商业目的,这时A是否可以向B收费呢? 
  
4 A是否必须将他做的修改公布呢?如果B向A索取修改的代码,A是否必须将全部修改的代码免费给B呢?
  
5 如果A对自己做的修改作了承诺或者担保的话,B直接将A修改的代码用于商业目的,A是否可以向B收取费用呢? 
LinWeijing
LinWeijing
* Apache 不等于 Apache 2 协议,另外 Apache 1 和 Apache 2 也是不同的内容的;主要是声明部分的不同, 比如 Apache 1.0 规定,必须在广告宣传内容中著名软件内容,Apache 1.1 必须在文档中注明,Apache 2 只需要在任何地方声明就好了。
LinWeijing
LinWeijing
5. A 的衍生作品版权由 A 决定,B 使用了 A 的产品, A 有权向 B 索取费用,甚至控诉侵权。
LinWeijing
LinWeijing
4. 只有 Apache 协议下的源码是必须开源自由的, Apache 协议外的源码由作者来决定。 (GPL 则就规定衍生作品也必须是开源的)
LinWeijing
LinWeijing
3: 这里有两个问题,一个是版权问题: a. A 只对自己的代码拥有版权,可以对衍生作品申请版权,但是版权保护范围不包含开源中的内容 b. 开源与收费不冲突,你也可以销售 Apache 协议下的软件,或者对维护服务收费; 问题是不能控告别人通过其他渠道获得,因为 Apache 协议是属于开源免费协议, 也就是其他人可以自由获得该协议下的源码。
LinWeijing
LinWeijing
1: Apache 2 是商业友好的,你可以使用商业目的,只要符合协议中的 4 个规定 2: 我的理解是 A 用开源软件发布的商业闭源程序,B 在使用 A 的闭源时候,是否违法; 是的,A 拥有控诉 B 的权利。
0
sjack
sjack

这表示, 修改后可以不开放源码 ?

LinWeijing
LinWeijing
是这样的
0
阿_涵___
阿_涵___
请问在商业项目中直接使用 协议 Apache License v2.0的开源代码,不作任何修改,只是使用,需要做什么额外的工作吗?
LinWeijing
LinWeijing
请再阅读一下 1~4 中的内容
0
sjack
sjack
@红薯  如果要用这个协议的开源软件来做自己的系统, 需要修改源代码,商业应用, 自己使用, 不发布给用户, 需要做些什么呢。 
0
phpsmile
phpsmile

引用来自“RAY_STONE”的答案

1 比如说A现在做一个商业项目要用到Apache,A从网上直接down下来,放到这个项目里用于商业目的,可以吗?如果A是down下来Apache的源码,自己编译后用于商业目的,可以吗?这两种方式A都不用付任何费用吧? 
  
2 A down到了Apache(或者Maven,Lucene等)的源码,同时A又对源码进行了修改,然后用于商业用途,比如用到了A的商业项目或者集成到A自己的产品中出售。这样是否违反了Apache License? 
  
3 A是否可以为他修改之后的作品申请版权或者专利呢,就是说A是否对他修改后的作品拥有版权?如果B把A修改的那部分用于商业用途,A是否可以收费呢?如果B在A修改的代码基础之上又进行了修改,并用于商业目的,这时A是否可以向B收费呢? 
  
4 A是否必须将他做的修改公布呢?如果B向A索取修改的代码,A是否必须将全部修改的代码免费给B呢?
  
5 如果A对自己做的修改作了承诺或者担保的话,B直接将A修改的代码用于商业目的,A是否可以向B收取费用呢? 
我也很想知道你的这5个问题,有专业人士帮忙解答吗
姚君
姚君
我也想知道答案,请教大神
剑气纵横
剑气纵横
我也想知道答案,请教大神
0
泡不烂的凉粉
泡不烂的凉粉

我觉得讨论不能什么有点难度, 需要专业的知识.  倒不如说说可以做什么.

Apache License v2.0 授权主要是允许源代码可以在不经过修改的情况下应用到其他的项目中,收费免费,开源闭源都不限制. 另外规定了源码可以被修改,并且允许修改后的代码再发布,但是修改的部分就不能闭源. 只能将修改的部分源码公开化. 

另外这个协议还允许依赖此类授权的附属代码有自己的授权协议. 前提是不与它的有冲突. 其实有冲突很难. 只要修改的部分不闭源, 并且附带原版版权说明一般不会违规.

0
开源X
开源X

不就是要源码么,小张,给他们打印几本跟辞海差不多的源码装订成册,顺丰到付

返回顶部
顶部