一种基于Web服务的eclipse插件存储及管理的方法

文档序号:6584227阅读:148来源:国知局
专利名称:一种基于Web服务的eclipse插件存储及管理的方法
技术领域
本发明涉及一种基于Web服务的eclipse插件存储及管理的方法。
背景技术
Eclipse提供了一个插件运行的平台,方便的插件安装和更新机制,使之逐渐成为 各大公司融合自身开发工具的一个平台,但是对Eclipse插件本身却没有统一的存储和管 理,以方便我们对插件进行搜索、下载、安装和管理。目前对于Eclipse插件的应用有以下 不足之处 1.搜索插件不便利,缺少统一的存储之地 除了 Eclipse本身提供的插件以外,我们使用一个插件首先要从互联网上搜索, 没有一个插件的存储之地以方便我们搜索,这个搜索过程不但浪费了我们的时间,而且也 不能保证搜索到的插件一定是可用的。
2.插件不一定可用 我们从互联网上搜索到的插件不一定可用,即插件的有效性。搜索到的插件可能 依赖另一个(些)插件,这就需要用户再搜索、下载和安装其他的插件,而这个过程是相当 的繁琐,几乎可以说是痛苦的,如出现这种情况大多数用户都会放弃使用该插件。
3.缺少对插件进行管理的方法 这里的管理包括对用户已经下载或安装的插件和插件仓库中插件两方面的管理。
Eclipse提供的插件管理只能对Eclipse本身安装的插件进行管理,而不能对用 户的所有Eclipse的插件进行管理。
4.缺少对插件集的下载和管理方法 所谓的插件集是指某一类开发所需要的所有插件的集合。目前要安装一个插件集 需要下载所有需要的插件然后安装所有需要的插件,这样即浪费时间和人力,而且不方便 对插件进行升级,缺少统一下载和安装插件集的方法。
5.插件安装不透明 Eclipse提供的安装方法需要我们根据下载的插件或者插件的地址手动的进行安 装,不方便管理插件,而且会污染Eclipse。如要采用link文件安装方式,需要手写link文 件,容易出错。

发明内容
本发明的目的就是针对上述的问题,为Eclipse插件提供一个搜索,下载,安装和 管理的平台,采用了以下技术 1.采用Eclipse RCP技术实现了平台的客户端 开发平台的客户端,采用的是Eclipse RCP技术,RCP(Rich ClientPlatform)富 客户端平台是基于Eclipse插件开发的一种应用,它是Eclipse 3. 0版本后新增的一项功 能。通过RCP可以快速构建应用程序,并且采用Eclipse RCP技术即可把客户端作为一个独立的桌面程序发布,运行也可把客户端发布为一个Eclipse插件,为和Eclipse集成提供 了便利。 2. Web服务实现采用WebService技术 WebService也口L] XML WebService是一禾中可以接收从Internet或者Intranet上 的其它系统中传递过来的请求,轻量级的独立的通讯技术,是通过SOAP在Web上提供的软 件服务,使用WSDL文件进行说明,并通过UDDI进行注册。 采用WebService技术来发布web服务,使客户端和服务分离,通过发布的接口进
行方法的调用,即减轻的程序的复杂度,也使系统的结构更加清晰。 3.采用Eclipse Job技术加载客户端数据 客户端的数据加载容易阻塞界面的UI线程,如果加载时间过长就会影响界面的 操作。Eclipse Job技术是对Thread的封装并添加了管理功能,使使用更加方便。把客户 端的数据的加载代码放入Job线程中,刷新界面数据代码放入UIJob线程中,即减小了代码 的复杂度,又可不影响界面的操作。 4.采用Apache HttpClient技术实现插件上传和下载 HttpClient是Apache Jakarta Common下的子项目,可以用来提供高效的、最新 的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建 议。采用HttpClient技术可实现多个插件上传,实现简单高效。 具体来说, 一种基于Web服务的eclipse插件存储及管理的方法,包括如下步骤 1)插件上传,2)插件存储,3)插件下载,4)Web服务的插件管理,5)客户端的插件管理,所述 插件存储为 1)读取配置信息,获得服务端保存插件的目录,读取上传zip格式插件的插件名 称和版本号; 2)在配置信息的路径下创建"插件名称/版本号"的目录; 3)把zip格式的插件写入到目录下。 所述插件上传方法为 1)选择要上传的插件或插件目录; 2)选择插件上传方式,包括zip包形式,单个jar包形式,目录形式,其中目录形式 含plugins目录和不包含plugins目录两种方式; 3)对每种上传方式判断上传的文件是否是一个插件,不是则提示用户不能上传;
4)若是一个插件,则读取jar文件信息和mf文件或者是每个jar文件中的mf文 件信息; 5)角率析mf信息,提取export-package, require-b皿dle, import-package信息;
6)上传插件,保存提取的export-package, require—b皿dle, import—package信 息和jar信息并保存插件。
所述插件下载方法为 1)选择要下载的插件,选择是否要下载插件的依赖;
2)若要下载插件的依赖,则查询数据库中插件的依赖; 3)若数据库中插件依赖都存在,则查询本地插件,若要下载的插件在本地都存在 则提示用户不需要下载,否则把本地不存在的插件一起自动打包并下载;
4)若数据库中插件依赖不存在或部分存在,则不下载插件并提示用户; 5)若不下载插件依赖,则查询本地插件,若要下载的插件在本地存在则提示用户
不需要下载,否则下载插件。 所述Web服务的插件管理方法为 1)用户登录,系统用户可以管理插件库内所有插件,普通用户和企业用户只能管 理自身上传的插件; 2)添加插件,选择需上传的插件填写必要信息,被上传的插件保存到插件库中,插 件的基本信息保存到数据库插件信息表中; 3)编辑插件,选择需要编辑的插件,修改需修改的信息,将修改的信息保存到数据 库插件信息表中; 4)删除插件,选择需要删除的插件,删除插件库中该插件文件,在数据库中删除该 插件的相关信息; 5)分配插件集,选择一个或者多个需分配插件集的插件,在数据库的插件集配置
表中保存分配的记录。 所述客户端的插件管理方法为 1)选择需要更新的插件,插件文件下载到本地,同时生成插件配置信息;若 该插件属于某个插件集,那么在插件集配置信息中将低版本替换成更新的新版本;若 EPR(Eclipse插件库Eclipse PluginsR印ository)中没有比选中插件更高版本的插件, 更新不可用; 2)选择需要安装的插件,同时选择安装此插件的eclipse路径; 3)选择需要卸载的插件,同时选择卸载此插件的eclipse路径; 4)选择需要删除的插件,删除被删除插件文件,删除被删除插件配置文件,若该插
件属于某个插件集,同时在改插件集配置文件中删除此插件信息。 本发明提供的基于Web服务的eclipse插件存储及管理的方法具有如下优点
1.插件搜索效率高 由于提供了插件库,插件的信息都保存在数据库中,插件的搜索都在数据库中进
行,提高了效率。 2.插件下载方便 插件的下载为自动打包下载,并且可以选择是否要下载插件的依赖,选择后下载
即可,这样就保证了插件的有效性。 3.插件安装方便灵活 插件的安装分为自动安装和手动安装,自动安装为下载插件后立刻安装,手动安 装为下载插件后不安装,用户需要的时候再安装;而且还可以为指定的Eclipse安装插件, 灵活方便 4.本地插件管理方便 本地插件管理可管理所有用本客户端下载的Eclipse插件,可对插件进行安装、 卸载、更新和删除,简单快捷。


图1是本发明实施例中插件上传解析流程图; 图2是本发明实施例中插件下载依赖查询流程图; 图3是本发明实施例中单个插件的依赖查询流程图; 图4是本发明实施例中插件存储流程图; 图5是本发明实施例中客户端插件管理流程图; 图6是本发明实施例中服务端插件管理流程图。
具体实施例方式
下面以非限定性的实施方式对本发明做进一步解释、说明。 —种基于Web服务的eclipse插件存储及管理的方法,包括如下步骤1)插件上传,2)插件存储,3)插件下载,4)Web服务的插件管理,5)客户端的插件管理。
其中,如图4所示,插件存储为 1)读取配置信息,获得服务端保存插件的目录,读取上传zip格式插件的插件名称和版本号; 2)在配置信息的路径下创建"插件名称/版本号"的目录;
3)把zip格式的插件写入到目录下。
如图1所示,插件上传方法为
1)选择要上传的插件或插件目录; 2)选择插件上传方式,包括zip包形式,单个jar形式,目录形式,其中目录形式含plugins目录和不包含plugins目录两只方式; 3)对每种上传方式判断上传的文件是否是一个插件,不是则提示用户不能上传; 4)若是一个插件,则读取jar信息和mf文件或者是每个jar中的mf文件信息; 5)角牟析mf信息,提取export-package, require-b皿dle, import-package信息; 6)上传插件,保存提取的export-package , require—b皿dle, import—package信
息和jar信息并保存插件。 如图2、图3所示,插件下载方法为 1)选择要下载的插件,选择是否要下载插件的依赖; 2)若要下载插件的依赖,则查询数据库中插件的依赖; 3)若数据库中插件依赖都存在,则查询本地插件,若要下载的插件在本地都存在
则提示用户不需要下载,否则把本地不存在的插件一起自动打包并下载; 4)若数据库中插件依赖不存在或部分存在,则不下载插件并提示用户; 5)若不下载插件依赖,则查询本地插件,若要下载的插件在本地存在则提示用户
不需要下载,否则下载插件。 如图6所示,Web服务的插件管理方法为 1)用户登录,系统用户可以管理插件库内所有插件,普通用户和企业用户只能管理自身上传的插件; 2)添加插件,选择需上传的插件填写必要信息,被上传的插件保存到插件库中,插件的基本信息保存到数据库插件信息表中;
7
3)编辑插件,选择需要编辑的插件,修改需修改的信息,将修改的信息保存到数据库插件信息表中; 4)删除插件,选择需要删除的插件,删除插件库中该插件文件,在数据库中删除该插件的相关信息; 5)分配插件集,选择一个或者多个需分配插件集的插件,在数据库的插件集配置表中保存分配的记录。 如图5所示,客户端的插件管理方法为 1)选择需要更新的插件,插件文件下载到本地,同时生成插件配置信息;若该插件属于某个插件集,那么在插件集配置信息中将低版本替换成更新的新版本;若EPR(Eclipse插件库Eclipse PluginsR印ository)中没有比选中插件更高版本的插件,更新不可用; 2)选择需要安装的插件,同时选择安装此插件的eclipse路径;3. 3. 0以及以下版本在links目录下新建link文件,3.4.0以及以上版本在dropins目录下新建link文件;
3)选择需要卸载的插件,同时选择卸载此插件的eclipse路径;除了删除link文件和update文件夹,3. 4以及以上版本的eclipse还需要删除bundle. Info文件中被卸载插件的bundle信息; 4)选择需要删除的插件,删除被删除插件文件,删除被删除插件配置文件,若该插件属于某个插件集,同时在改插件集配置文件中删除此插件信息。
这样,本发明具有以下功能 1.为Eclipse插件提供统一的存储地(即插件仓库)和存储方式 主要是为Eclipse插件提供一个集中的插件仓库并统一存储方式,通过管理者或
用户搜集Eclipse插件按照一定的存储方式保存插件,为用户提供搜索和下载插件之地,
减少用户搜索插件的时间。 2.提供插件自动下载和搜索方法 提供三种搜索插件的方式插件名、插件类别和标签。在下载插件时自动打包进行下载。 3.解析插件manifest, mf文件,确保插件的有效性 下载插件时,能够自动检测插件的manifest, mf文件,查询相关依赖并自动在插件仓库中搜索所需要的插件,自动打包下载以确保插件的有效性。
4.插件安装的透明性和无污染性 在下载时,需要用户选择插件的路径,安装方式为自动的link安装,这样就使插件和Eclipse分离,既能方便插件的管理,又能不污染Eclipse,而且安装过程对用户来说是透明的。 5.提供本地插件和仓库插件的管理 —方面能够对用户本地所下载和安装的插件进行管理,也能对插件仓库的插件进行管理。
本地插件管理为用户管理本地的所有插件,内容包括插件的安装、卸载、更新和删除。 插件仓库管理为管理员对插件仓库的插件进行管理,为插件库添加新的插件或添加新版本的插件,编辑和删除插件,为用户提供丰富的插件。
6.提供本地插件集和仓库插件集的管理 —方面能够对用户本地所下载和安装的插件集进行管理,也能对插件仓库的插件集进行管理。
本地插件集管理为用户管理本地的所有插件集,内容包括插件集的安装、卸载、
更新和删除。 插件仓库管集理为管理员对插件仓库的插件集进行管理,添加、编辑和删除插件
集,对插件集中的插件进行替换、更新、删除等,为用户提供丰富的插件集。
此外,本发明还可以提供一些额外的功能 B插件的上传按照一定的方式上传插件到插件库,以丰富插件库中的插件。
B插件推荐用户推荐一些认可的插件。
B插件推荐管理管理用户推荐的插件信息。
B插件类别管理管理插件的类别。
B用户管理对注册的用户进行管理。
B插件投票对插件进行投票,以便系统对插件进行打分。
B发表评论对插件发表评论。
9
权利要求
一种基于Web服务的eclipse插件存储及管理的方法,包括如下步骤1)插件上传,2)插件存储,3)插件下载,4)Web服务的插件管理,5)客户端的插件管理,其特征在于所述插件存储为1)读取配置信息,获得服务端保存插件的目录,读取上传zip格式插件的插件名称和版本号;2)在配置信息的路径下创建“插件名称/版本号”的目录;3)把zip格式的插件写入到目录下。
2. 根据权利要求1所述的基于Web服务的eclipse插件存储及管理的方法,其特征在于所述插件上传方法为1) 选择要上传的插件或插件目录;2) 选择插件上传方式,包括zip包形式,单个jar形式,目录形式,其中目录形式含plugins目录和不包含plugins目录两只方式;3) 对每种上传方式判断上传的文件是否是一个插件,不是则提示用户不能上传;4) 若是一个插件,则读取jar信息和mf文件或者是每个jar中的mf文件信息;5) 角牟析mf信息,提取export-package, require-b皿dle, import-package信息56) 上传插件,保存提取的export-package, require-b皿dle, import-package信息禾口jar信息并保存插件。
3. 根据权利要求1所述的基于Web服务的eclipse插件存储及管理的方法,其特征在于所述插件下载方法为1) 选择要下载的插件,选择是否要下载插件的依赖;2) 若要下载插件的依赖,则查询数据库中插件的依赖;3) 若数据库中插件依赖都存在,则查询本地插件,若要下载的插件在本地都存在则提示用户不需要下载,否则把本地不存在的插件一起自动打包并下载;4) 若数据库中插件依赖不存在或部分存在,则不下载插件并提示用户;5) 若不下载插件依赖,则查询本地插件,若要下载的插件在本地存在则提示用户不需要下载,否则下载插件。
4. 根据权利要求1所述的基于Web服务的eclipse插件存储及管理的方法,其特征在于所述Web服务的插件管理方法为1) 用户登录,系统用户可以管理插件库内所有插件,普通用户和企业用户只能管理自身上传的插件;2) 添加插件,选择需上传的插件填写必要信息,被上传的插件保存到插件库中,插件的基本信息保存到数据库插件信息表中;3) 编辑插件,选择需要编辑的插件,修改需修改的信息,将修改的信息保存到数据库插件信息表中;4) 删除插件,选择需要删除的插件,删除插件库中该插件文件,在数据库中删除该插件的相关信息;5) 分配插件集,选择一个或者多个需分配插件集的插件,在数据库的插件集配置表中保存分配的记录。
5. 根据权利要求1所述的基于Web服务的eclipse插件存储及管理的方法,其特征在于所述客户端的插件管理方法为1) 选择需要更新的插件,插件文件下载到本地,同时生成插件配置信息;若该插件属 于某个插件集,那么在插件集配置信息中将低版本替换成更新的新版本;若印r中没有比 选中插件更高版本的插件,更新不可用;2) 选择需要安装的插件,同时选择安装此插件的eclipse路径;3) 选择需要卸载的插件,同时选择卸载此插件的eclipse路径;4) 选择需要删除的插件,删除被删除插件文件,删除被删除插件配置文件,若该插件属 于某个插件集,同时在改插件集配置文件中删除此插件信息。
全文摘要
一种基于Web服务的eclipse插件存储及管理的方法,包括如下步骤1)插件上传,2)插件存储,3)插件下载,4)Web服务的插件管理,5)客户端的插件管理,本发明具有如下优点1,插件搜索效率高;2,插件下载方便;3,插件安装方便灵活;4,本地插件管理方便。
文档编号G06F9/44GK101770366SQ20091023096
公开日2010年7月7日 申请日期2009年11月27日 优先权日2009年11月27日
发明者刘宗福, 刘春 , 刘江宁, 卞功杰, 李志 , 李治, 段文良, 韩兰君, 黄三伟 申请人:山东中创软件商用中间件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1