Equinox概述

      Equinox是Eclipse开源组织提供的、参照OSGi规范第4版实现的OSGi框架,它构成了EclipseIDE的核心 —— 模块化的Java运行时,它实现了OSGi规范4中规定的必须强制实现的功能,同时,它也实现了OSGi规范中大部分的可选功能。

 

      Equinox项目包括OSGi R4版本规范核心框架的实现,一系列OSGi标准服务Bundle及运行基于OSGi的系统的一些基础构件。

      1、Equinox的OSGi核心实现由三部分组成,包括:OSGi核心规范的实现(org.eclipse.osgi)、OSGi框架启动支持(org.eclipse.equinox.launcher)、Equinox启动可执行程序(即eclipse.exe文件)。

 

      2、OSGi标准服务Bundle实现

            org.eclipse.equinox.app(Application Container):实现了OSGi R4 MEG中的应用程序容器服务。

            org.eclipse.equinox.common(Common Utility Bundle):由一组Eclipse工具类(如IStatus,Assert,IAdaptable等)组成的实用程序Bundle。
    

            org.eclipse.equinox.device(Device Access Service):OSGi R4规范中的Device Access Service标准服务的实现,该组件由Prosyst公司提供实现。
    

            org.eclipse.equinox.ds(Declarative Services):OSGi R4规范中的Declarative Service标准服务的实现,该组件由Prosyst公司提供实现。
    

            org.eclipse.equinox.event(Event Admin Service):OSGi R4规范中的事件管理服务的实现。
    

            org.eclipse.equinox.http(HTTP Service):OSGi R4规范中的HTTP服务实现。
    

            org.eclipse.equinox.log(Log Service):OSGi R4规范中的日志服务实现。
    

            org.eclipse.equinox.metatype(Metatype Service):OSGi R4规范中的Metatype服务的实现。
    

            org.eclipse.equinox.preferences(Preferences Service):OSGi R4规范中的Preferences服务的实现。
    

            org.eclipse.equinox.registry(Extension Registry):Equinox提供的Ecipse扩展点(extension point)注册表服务。
    

            org.eclipse.equinox.supplement(Supplemental Bundle/JAR):Equinox提供的一组Equinox实现所使用的类型库。
    

            org.eclipse.equinox.useradmin(User Admin Service):OSGi R4规范中的用户管理服务实现。
    

            org.eclipse.equinox.wireadmin(Wire Admin Service):OSGi R4规范中的服务通信拓扑管理服务。
    

            org.eclipse.osgi.services(OSGi Services API):OSGi R4规范中的服务接口定义,该Bundle由OSGi联盟定义的服务API接口组成。
    

            org.eclipse.osgi.util(OSGi Utilities):OSGi R4规范中的工具类接口及接口实现Bundle。

 

      3、OSGi的服务器端(J2EE实现)应用

            Equinox提供了一组基础的Bundle,使得使用JSP、Servlet和Struts等J2EE技术的Web应用项目可以运行于Equinox OSGi环境中。
            Equinox通过一组Bundle,可以将Equinox OSGi应用嵌入到现有的Web服务器(如Tomcat,Jetty等)和应用服务器(如Websphere,Weblogic等)中。

 

            org.eclipse.equinox.http(HTTP service):该Bundle是OSGi R4规范中的HTTP服务的标准实现。目前该实现只支持Servlet 2.3。
    

            org.eclipse.equinox.http.registry(HTTP registry):该Bundle支持使用Eclipse的扩展注册表注册servlet,文件资源和JSP而不是使用OSGi中的代码注册机制。
    

            org.eclipse.equinox.servletbridge(Servlet Bridge):该Bundle提供一个底层的Hook servlet,使得Equinox可以嵌入到现有的应用服务器中运行。该Bundle中的servlet启动嵌入的Equinox并使其可以处理来自底层应用服务器接收的HTTP请求。
    

            org.eclipse.equinox.http.servlet(HTTP Servlet):该Bundle为在Equinox中发布其他servlet处理引擎(如传统的应用服务器)为OSGi HTTP服务提供支持 。
    

            org.eclipse.equinox.http.servletbridge(HTTP ServletBridge):该Bundle为底层的应用服务器(如Tomcat,Jetty等)发布为OSGi HTTP服务提供一层封装。封装的应用服务器必须安装该servlet bridge。
   

            javax.servlet(Servlet API):Servlet规范标准接口API的Bundle封装。
    

            javax.servlet.jsp(Servlet JSP API):Servlet JSP API接口的Bundle封装。
    

            org.mortbay.jetty(Jetty):嵌入式Jetty实现的Bundle封装。目前Equinox提供的Jetty实现版本为5.x。
    

            org.eclipse.equinox.http.jetty(HTTP Jetty):该Bundle封装Jetty为标准的OSGI HTTP服务。目前该服务只能使用Jetty 5.x版本;如果用户希望使用Jetty 6.x版本的Bundle封装,可以参考ops4j上的实现。

 

      4、Equinox部署更新框架(Provisioning)

            为了适应OSGi环境的特点,Equinox项目组为基于OSGi的系统的部署更新提供了一套全新的框架,称为 “equinox p2”。

 

你可能感兴趣的:(eclipse,应用服务器,servlet,嵌入式,osgi)