怎样使用Apache许可证

        若用户须要应用Apache许可证,请将下面演示样例使用适当的注视方法包括在作品源文件里,将括号“[]”中的字段以用户自身的区分信息来替换。另外建议将文件名称或类别名以及目的写在跟页码显示同样的地方,以更加easy的区分出第三方档案。

Copyright [yyyy] [name of copyright owner] 

Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at

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

Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.

Apache Licene 2.0协议

        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

 

 

Apache软件基金会

        Apache软件基金会(Apache software Foundation简称为ASF),是专门为支持开源软件项目而办的一个非营利性组织。在它所支持的Apache项目与子项目中,所发行的软件产品都遵循Apache许可证(Apache License)。

 

发展历史

Apache软件基金会正式创建于1999年,它的组建者是一个自称为“Apache组织”的群体。这个“Apache组织”在1999年曾经就已经存在非常长时间了,这个组织的开发爱好者们聚集在一起,在美国伊利诺伊斯大学超级计算机应用程序国家中心(National Center for Supercomputing Applications,简称为NCSA)开发的NCSA HTTPdserver的基础上开发与维护了一个叫Apache的HTTPserver。

最初NCSA HPPTdserver是由Rob MaCool开发出来的,可是它的最初开发人员们逐渐对这个软件失去了兴趣,并转移到了其它地方,造成了没有人来对这个server软件提供很多其它的技术支持。由于这个server的功能又如此强大,而代码能够自由下载改动与公布,当时这个server软件的一些爱好者与用户開始自发起来,互相交流并分发自己修正后的软件版本号,并不断改善其功能。为了更好进行沟通,Brain Behlendrof自己创建了一个邮件列表,把它作为这个群体(或者社区)交流技术、维护软件的一个媒介,把代码重写与维护的工作有效组织起来。这些开发人员们逐渐地把他们这个群体称为“Apache组织”,把这个经过不断修正并改善的server软件命名为Apacheserver(Apache
Server)。

这个命名是依据北美当地的一直印第安部落而来,这支部落以高超的军事素质和超人的忍耐力著称,19世纪后半期对侵占他们领土的入侵者进行了反抗。为了对这支印第安部落表示仰慕之意,取该部落名称(Apache)作为server名。但一提到这个命名,这里还流传着一段有意思的故事。由于这个server是在NCSA HTTPdserver的基础上,通过众人努力,不断地修正、打补丁(Patchy)的产物,被戏称为“A Patchy Server”(一个补丁server)。在这里,由于“A
patchy”与“Apache”是谐音,故最后正式命名为“Apache Server”。

后来因为商业需求的不断扩大,以Apache HTTPserver为中心,启动了很多其它的与Apache项目并行的项目,比方mod perl、PHP、Java Apache等等。随着时间的推移、形势的变化,Apache软件基金会的项目列表也不断更新变化中——不断的有新项目启动,项目的中止以及项目的拆分与合并。比方一開始,Jakarta就是为了发展Java容器而启动的Java Apache项目,后来因为升阳公司(SUN)的建议,项目名称变为Jakarta。但当时该项目的管理者也没有想到Jakarta项目因为Java的火爆而发展到现在一个囊括了众多Java语言开源软件子项目的项目。以至后来,不得不把个别项目从Jakarta中独立出来,称为Apache软件基金会的顶级项目,Struts项目就是当中之中的一个。

 

Apache 中包括的一些项目例如以下:   

 · HTTP Server:能够在UNIX,MS-Windows,Macintosh和Netware操作系统下执行的HTTPserver的项目。

 · Ant:基于Java语言的构建工具,类似于C语言的Make工具。

 · AXIS2:Web服务(SOAP, WSDL)的处理器,基于AXIS1.X又一次构建。

 · APR:(也就是:Apache Portable Runtime)C语言实现的便携执行库的管理工具。

 · Beehive:为了简单构建J2EE应用的对象模型。

 · Apache Camel:一个开源的企业应用集成框架。

 · Cocoon:一个基于组件技术和XML和Web应用开发框架。

 · CloudStack:一个开源的云计算IaaS管理平台。

 · DB:关于数据库管理系统的几个开源项目集合。

· Apache::Deploy:是一个(R)?ex的模块,用来高速公布站点到Apache和WAR文件到Tomcat.简化了多server应用的

公布过程。支持基于Git的公布和rpm/deb公布,同一时候简化了构建rpm和deb包。

· Derby:一个纯JAVA的数据库管理系统。

 · Directory:基于JAVA语言的文件夹server,支持LDAP等文件夹訪问协议。

 · Excalibur:Apache Avalon项目的前身。

 · Forrest:一个公布系统框架的项目。

 · Geronimo:J2EEserver。

 · Gump:集成管理器。

 · Hadoop:并发运算编程工具和分布式文件系统。

 · Harmony:一个兼容JAVA标准的JAVA语言的开源实现。

 · HiveMind:一个服务(Services)与配置(configuration)的微内核。

 · iBATIS:一个基于JAVA语言的数据持久化框架。

 · Incubator:为了帮助那些希望获取Apache软件基金会支持的计划进入Apache软件基金会的审核项目。

· Jackrabbit:内容仓库API标准(Content Repository for Java Technology API,即JSR-170)的一个开源实现项

目。

· Jakarta:在ASF中,基于Java语言的一组开源子项目的集合,如今包括的子项目有:BCEL,BSF,Cactus,

Commons,ECS,HttpComponents,JCS,JMeter,ORO,Regexp,Slide,Taglibs,Turbine,Velocity。

· James:JAVA语言实现的邮件新闻server。

 · Labs:为基金会成员提供最新变更的思维的计划。

 · Lenya:内容管理系统。

 · Logging:一个开发能够在C++、Java、Perl、PHP、.NET 计算机语言下执行的通用日志工具项目集合。

 · Lucene:高性能的,基于Java语言的全文检索项目。

 · Maven:项目集成构建工具。

 · MyFaces:一个JavaServer Faces(JSF)的实现框架。

 · mod_perl:为Apacheserver提供Perl语言集成的项目。

 · POI:提供API以供JAVA程序对Microsoft Office格式文件的读/写。

 · OpenOffice:提供兼容MS.Office的文档、表格和演示稿的编辑和展示功能。

 · Portals:与门户(Portal)技术相关的几个项目集合。

 · Santuario:发展XML安全性方面的项目。

 · Shale:在Struts之后,发展起来基于JAVA语言Web应用框架。

 · Shiro:权限管理

 · SpamAssassin:垃圾邮件过滤器。

 · Struts:一个基于J2EE平台的MVC 设计模式的Web应用框架。

 · Subversion:一个软件版本号管理系统。

 · Tapestry:还有一个J2EE平台的、能产生动态、高性能Web应用的框架。

 · TCL:为Apacheserver提供Tcl语言集成的项目。

 · Tomcat:一个执行Java Servlet与JavaServer Pages(JSP)的容器。

 · Web Services:与Web Services技术相关的项目集合。

 · Xalan:XML转换处理器。

 · Xerces:一组能够在Java,C++,Perl 计算机语言下使用的XML解析器项目。

 · Apache XML:XML解决方式。

 · XMLBeans:基于JAVA语言XML对象绑定工具。

 · XML Graphics:发展XML与图形进行转换的计划项目。

  

  若大家感兴趣,能够到Apache站点进行查看:http://www.apache.org/

Apache介绍的更多相关文章

  1. tomcat+Apache介绍

    tomcat不是一个完整意义上的Jave EE服务器,它甚至都没有提供对哪怕是一个主要Java EE API的实现:但由于遵守apache开源协议,tomcat却又为众多的java应用程序服务器嵌入自 ...

  2. Mac上自带的Apache介绍

    Mac 自动Apache,无须再安装,默认的Apache地址是: /private/etc/apache2 一. Apache基本操作 1. 启动:sudo apachectl start 2. 查看 ...

  3. 五种开源协议(GPL,LGPL,BSD,MIT,Apache)介绍

    商业化的软件应该主要选用MIT或者Apache license的开源系统作为插件. 什么是许可协议? 什么是许可,当你为你的产品签发许可,你是在出让自己的权利,不过,你仍然拥有版权和专利(如果申请了的 ...

  4. LAMP架构应用实战—Apache服务介绍与安装01

    LAMP架构应用实战—Apache服务介绍与安装01   一:Apache是什么 Apache是Apache基金会开发的一个高性能.功能强大.安全可靠.灵活的开放源码的WEB服务软件 二:Apache ...

  5. Apache web服务器(LAMP架构)(week3_day4)--技术流ken

    apache介绍 1).世界上使用率最高的网站服务器,最高时可达70%:官方网站:apache.org 2).http 超文本协议 HTML 超文本标记语言 3).URL 统一资源定位符 http:/ ...

  6. 末学者笔记--apache编译安装及LAMP架构上线

    apache介绍 一.Apache的三种工作模式 Apache一共有3种稳定的MPM模式(多进程处理模块),它们分别是prefork.worker.event.http-2.2版本的httpd默认的m ...

  7. Apache web服务器(LAMP架构)

    Apache web服务器(LAMP架构) apache介绍 1).世界上使用率最高的网站服务器,最高时可达70%:官方网站:apache.org 2).http 超文本协议 HTML 超文本标记语言 ...

  8. linux服务之apache篇(一)

    1.apache介绍:使用率最高的网站服务器: URL:统一资源定位符: 端口:http:80   https:443 2.apache三种工作模式: prefork:一个线程处理一个请求(占用内存多 ...

  9. mod_php和mod_fastcgi和php-fpm的介绍,对比和性能数据

    1.php中fastcgi和php-fpm是什么东西 最近在研究和学习php的性能方面的知识,看到了factcgi以及php-fpm,发现我对他们是少之又少的理解,可以说几乎是一无所知,想想还是蛮可怕 ...

随机推荐

  1. 《深入理解mybatis原理》 MyBatis事务管理机制

    MyBatis作为Java语言的数据库框架,对数据库的事务管理是其很重要的一个方面.本文将讲述MyBatis的事务管理的实现机制. 首先介绍MyBatis的事务Transaction的接口设计以及其不 ...

  2. [C++STDlib基础]关于日期时间的操作——C++标准库头文件<ctime>

    总结 /* A.头文件<ctime> #if _GLOBAL_USING && !defined(RC_INVOKED) _STD_BEGIN 1.四个数据类型 using ...

  3. Servlet和JSP读书笔记(一)

    Java Servlet 技术,简称Servlet,是Java中用于开发web应用程序的基本技术. Servlet实际上也就是一个Java程序.一个Servlet应用程序通常包含很多Servlet.而 ...

  4. javascript中使用Map

    mis.comm.js.Map = function() { this.elements = new Array(); //获取MAP元素个数 this.size = function() { ret ...

  5. Java NIO实战之聊天室

    在工作之余花了两个星期看完了<Java NIO>.整体来说这本书把NIO写的非常具体,没有过多的废话,讲的都是重点,仅仅是翻译的中文版看的确实吃力.英文水平太低也没办法,总算也坚持看完了. ...

  6. Android常用控件之RatingBar的使用

    RatingBar控件比较常见就是用来做评分控件,先上图看看什么是RatingBar 在布局文件中声明 <?xml version="1.0" encoding=" ...

  7. codeforces 659C Tanya and Toys

    题目链接:http://codeforces.com/problemset/problem/659/C 题意: n是已经有的数字,m是可用的最大数字和 要求选自己没有的数字,且这些数字的数字和不能超过 ...

  8. [Android学习笔记]PopupWindow的使用

    什么时候使用PopupWindow? 当业务需求的交互形式需要在当前页弹出一个简单可选项UI与用户进行交互时,可使用PopupWindow完成此功能开发 Android Dev API Doc Pop ...

  9. oracle 12c 中asm元数据是否有所变化

    详见原文博客链接地址: oracle 12c 中asm元数据是否有所变化

  10. VSTO学习笔记(九)浅谈Excel内容比较

    原文:VSTO学习笔记(九)浅谈Excel内容比较 说起文件内容比较,或许我们首先想到的是UltraCompare这类专业比较的软件,其功能非常强大,能够对基于文本的文件内容作出快速.准确的比较,有详 ...