JTang—Eclipse插件简介

来源 :计算机时代 | 被引量 : 0次 | 上传用户:wqc851109
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:利用Eclipse插件的可扩展机制开发了JTang-Eclipse插件。JTang-Eclipse插件是一个将JTang服务器集成到Eclipse上的工具,遵循Eclipse插件开发平台提供的框架,支持服务器生命周期管理,可以在JTang上部署J2EE archive包,并提供打包、部署描述符自动生成和JSP编译等辅助J2EE开发的功能。
  关键词:Eclipse;插件;J2EE;PDE;API;JTang
  
  0 引言
  
  Eclipse是一个开放的、通用的、可扩展的集成开发环境,它为创建可扩展的集成开发环境提供了一个开放源码的平台Ⅲ。这个平台允许任何人构建与环境和其它工具无缝集成的工具。JTang-Eclipse插件可以使用户在Eclipse平台上方便地进行启动、关闭JTang服务器,自动生成描述符,将指定对象打包,在服务器上进行动态部署或取消部署等操作,大大提高了基于JTang应用服务器的开发效率。
  
  1 基于插件的体系结构与插件的工作原理
  
  1.1体系结构
  


  图1 Ecfipse体系结构
  Eclipse最具特色的地方就是它的插件体系结构,如图1所示。工具与Eclipse无缝集成的关键就是一插件。除小型的运行时内核(Platform Runtime)之外,Eclipse中所有东西都是由插件构成的。一个插件可以声明许多指定的扩展点和任意个在其它插件中的扩展点的扩展。插件的扩展点也能够被其它的插件扩展。工作区(Workspace)和工作台(Workbench)是Eclipse平台的两个必备的插件——它们给大多数插件提供了扩展点,也就是接口。Workspace是负责管理用户资源的插件:包括用户创建的项目和项目中的文件等。Workbench为Eclipse提供用户界面,它为添加用户界面和组件提供了扩展点,同时也提供了SWT和JFace。SWT是Java的Swing/AWT GU lAP I的非标准替代者,JFace则建立在SWT基础上,包括图像、工具箱、字体对话框、参数选择、向导框架、进度条等,帮助系统定义插件扩展点,提供一个附加的导航结构,允许工具以HTML文件的形式添加文档。总之,在Eclipse平台上,可以以插件的形式开发出各种功能构件并集成到Eclipse平台中,下面介绍的JTang-Eclipse插件就是如此。
  
  1.2插件的工作原理
  Eclipse系统启动时,其运行时内核会启动平台的基础部分查找所有可用的插件,读取其插件的声明文件——Manifest,并在内存中构建一个插件注册表。在Eclipse启动后,其他任意插件都不能添加进来。
  每个插件都有一个名为plugin.xml的Manifest文件,声明了它同其它插件的互连关系。一个扩展点可以声明在扩展中使用的附加的xml元素类型,它允许提供扩展点的插件与声明扩展点的插件相互交流信息。此外,Manifest文件不需要激活提供扩展的插件或者装载任意代码,它可以从插件注册表获得。这个属性是相当关键的,特别是对于支持大量插件的安装,但是这种情况仅在用户会话中需要。使用基于xml插件的Manifest也能更容易地开发支持创建插件的工具,PDE(Plug-InDevelopment Environment)就是其中一个实例。
  
  2 JTang-Eclipse插件的体系结构及其功能模块
  
  可插拔的Eclipse提供的插件运行环境使得插件的安装和卸载十分方便。它具有可扩展、各模块功能相对独立等特性,未来要添加功能只要加入相应的模块即可。
  JTang-Eclipse插件正是利用Eclipse插件开发环境提供的扩展点和API的这些特性,通过扩展其扩展点而实现其强大功能的。其插件的体系结构如图2所示。
  


  图2 JTang-Eclipse插件的体系结构
  JTang-Eclipse插件为JTang服务器提供了以下接口:J2EE、Xdoclet、Packaging、Deployer、Launcher。相应地分为五个功能模块。
  服务器生命周期管理提供配置缺省服务器的preference页面,在Eclipse界面中快速启动、关闭和停止JTang应用服务器,提供生命周期管理的参数配置及存放功能。服务器启动配置中需要JTang服务器的代码路径以启动服务器。
  J2EE提供EJB组件和Web组件等J2EE相关项的生成向导、部署描述符的自动生成、WebServices的生成向导、JSP编辑器、xml编辑器等功能的模块。
  XDoclet提供生成描述符的preferences配置页面,对于给定的EJB、Servlet,可以根据preferences配置的任务及其设置的相关属性值,自动生成部署描述符及其他的相关文件。生成部署描述符时首先需要得到JTang特有的部署描述符的dtd文件。
  打包提供打包的preferences配置页面,根据用户preferences的配置,把用户指定的文件、文件夹打到archive文件中。
  部署提供部署路径设置的preference页面和查看资源是否已被部署以及被部署到部署路径的property页面。实现将archive文件放到指定的部署路径下、将改动过的archive文件重新放到原部署路径下、将archive文件从部署路径下删除的功能,等待扫描后被deploy、redeploy或者undeploy。本插件在部署时只是将要部署的archive文件复制到部署路径,反部署时是将要撤销部署archive文件从部署路径删除。然后由JTang服务器的kernel模块来扫描部署路径并进行真正的部署或撤销部署。所以这里在Eclipse界面上进行的deploy、redeploy或者undeploy都需要kernel模块的配合才能完成。部署和服务器启动子模块相对于工程属性拥有影响全局的属性,这些preferences的配置在windows-preference页面进行。
  利用插件的可扩展机制开发的JTang-Eclipse插件系统具有如下特性:
  易用性JTang-Eclipse插件提供了属性设置和功能使用的图形界面,使用方便,界面风格统一。
  扩展性各功能模块之间相对独立,新的功能模块可以轻松地添加到现有地体系中而无需对已有模块做较大的修改。
  便利性提供大量辅助性功能,如自动生成部署描述符,自动进行JSP编译等,用户只需进行简单的配置。
  安装卸载方便安装卸载只需在特定的目录下做简单的拷贝和删除,不会对系统其他部分造成影响,系统的稳定性得以增强。
  
  3 结束语
  
  Eclipse是功能强大的开发平台,它的PDE(PluginDevelopment Environment)为用户提供的了一系列扩展点。JTang-Eclipse插件通过扩展这些扩展点将JTang服务器集成到Eclipse平台上,各模块独立实现自己的功能,为高效地进行开发提供了有力的工具。
  注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
摘要:《程序设计》是计算机专业学生的必修课程,教师非常重视对学生程序设计能力的培养。然而现有的程序设计教材未阐明程序和给定问题之间的关系,导致学生无法理解程序设计的本质。文章提出采用Floyd不变式断言法分析程序,并通过两个实例进行说明。教学实践证明,采用这种方法有助于学生理解程序。  关键词:不变式断言法;程序正确性证明;最大公约数问题;自然数的平方根问题    0 引言    《程序设计》是计
期刊
摘 要:利用摄像头对防控区域中有无物体运动进行监测,可及时发现防控区域内的异常情况。目前,这类监控系统的运动检测部分主要采用的是专用芯片或DSP。文章介绍了一种利用Nios Ⅱ嵌入式处理器实现运动检测的方案,该方案可以在一个FPGA芯片内实现系统的大部分功能,其结构简单、扩展性强。  关键词:NiosⅡFPGA;运动检测;安防系统
期刊
摘 要:随着OA系统的发展,在进行OA系统设计时如何优化工作流程的设计显得越来越重要。根据OA系统的功能,文章提出了一种基于工作流管理的OA系统核心业务流程模型,并以实际系统为例,对模型中的核心业务流程给出了详细的设计与实现。  关键词:办公自动化;核心业务;流程;模型;实现
期刊
摘 要:为了解决设备重启后的重新设置问题,提出了一种实现设备控制设置的存储和回调功能的方法。该方法采用VC++中的ADO数据库编程技术,将已发送的设备控制命令保存在数据源文件中,然后根据需要进行存取,实践证明,该方法简单、灵活,对设备的控制更加方便,提高了工作效率。  关键词:串口;数据库;控制命令;设备控制
期刊
摘 要:对Microsoft Speech SDK 5.1语音控制编程接口SAPI进行了分析,详细描述用C#语言结合这些接口开发语音应用程序的流程步骤,并最终以实例程序展示了共享型语音控制程序的开发流程。  关键词:Microsoft Speech SDK;语音合成;语音识别;C#;COM
期刊
摘 要:从系统的概述、结构、工作层次、软硬件支持、功能、程序设计事项方面对基于Dialogic电话卡、具有语音合成与语音识别功能的办公自动化系统进行了详细描述,并给出了测试结果与尚待解决的问题。  关键词:办公自动化系统;语音合成;语音识别;Dialogic电话语音卡
期刊
摘 要:传统的异常处理代码存在许多问题,尤其是代码不具有模块性,异常代码的维护很困难,面向方面编程(AOP)是一种新的编程技术,它弥补了面向对象编程(OOP)在跨越模块行为上的不足,利用AOP能够很好地分离出“异常处理”这一横切关注点,模块化构建松散耦合的系统-文章研究了在异常处理方面的通用策略和AOP在异常处理方面的应用,并给出了基于JBoss AOP的具体实现:该框架简单灵活,实用。  关键
期刊
摘 要:交又查询是结构化查询的一种,它将数据表通过字段的内容进行归类,形成行、列,重新组成新的表。MicrosonAccess作为一个小型关系型数据库管理工具,采用了特定的语法实现了快速、易用的交叉查询,针对这一语法,文章以实例的方式简要叙述了多种情况下交又查询的实现过程、讨论了使用Access进行交叉查询需要掌握的技巧,并对实际应用过程中容易碰到的问题作了分析,提出了相应解决办法。  关键词:
期刊
摘 要:基于Windows平台下.Net Framework中GDI+二维图形类库,以路径(GraphicsPath)表示图元形状,用仿射变换矩阵的乘法进行图元的连续变换,推导出图元不失真连续变换的条件,并应用图元变换的矩形区域归整化,解决了文本图元变换时字体放缩的难题。  关键词:Net;GDI+;图元变换;路径;矩阵;不失真;文本变换
期刊
摘 要:叙述了如何利用虚拟现实建模语言X3D语法,采用变通的方式来模拟面向对象编程的方法:借助X3D中的原型(PROTO)节点和Script节点,实现了面向对象编程中的如数据封装、继承等功能特性,并给出了相应的实例。  关键词:X3D;面向对象;原型;节点
期刊