分享

基于OSGi的Virgo环境搭建(一)

 昵称21365845 2015-01-14

1.背景

最近要将web项目模块化以支持热插拔、动态扩展等功能,因此我们开始研究如何将OSGi引入web项目。关于OSGi,大家可以参考OSGi研究与总结。现在主流的j2EE框架都离不开Spring,因此,将OSGi与Spring进行无缝整合就成为了引入OSGi的关键。值得庆幸的是,Spring早在08年就已对OSGi进行大力支持,并开发了子项目SpringDM与OSGi进行完美融合。但是,自从3.2版本之后,为了Gradle,Spring摒弃OSGi(关于为什么摒弃OSGi,大家可以参考http://www./news/2012/10/spring-osgi-gradle),关于OSGi在J2EE中的应用,大家也有些争论,可谓是仁者见仁智者见智,说到底,还是对OSGi研究的不够深入,导致OSGi在项目中发挥不出关键作用以致成为累赘。

总之,没尝试过OSGi的人是没有发言权的,基于这样的背景,下面我们就来构建Spring Tools Suite(STS)+ Virgo 的开发环境,为我们接下来深入研究OSGi在Web项目中的应用打下坚实基础。

2.预备知识

在开始之前,先简单介绍一下涉及到的名词概念,了解OSGi以及Virgo的同学可以直接无视。

什么是OSGi?

简单的说,它是一套规范及标准,支持java语言模块化的系统。我们常用的Eclipse就是基于OSGi标准开发的。详情介绍http://developer.51cto.com/art/200909/152190.htm)

什么是STS?

基于Eclipse的一套IDE开发工具,简单说,就是Eclipse + STS插件。

什么是Virgo Tomcat Server?

就是将Tomcat进行包装,集成了OSGi环境的Server。详细介绍 http://www./5152.html

什么是Maven?

这个就不多说了,google一下就清楚了。

3.环境搭建

好,我们正式开始搭建过程。

3.1步骤一:

下载STS开发环境,地址http:///tools/sts/all,只能下载最新版本,分为绿色解压版及安装版,下载解压版即可。当然,如果你也可以下载Spring Tool Suite的插件直接安装到你的Eclipse环境中,该插件大概有130M左右。

3.2步骤二:

下载Virgo Server,地址http://www./virgo/download/,我们采用的是基于tomcat的。

3.3步骤三:

配置Virgo Server。

我们需要将下载的Virgo Server集成到STS环境中,首先,在STS IDE中安装virgo tools插件,通过Help->Install New Software,弹出如下界面。

在STS IDE中安装virgo tools,通过Help->Install New Software,弹出如下界面。

点击Add,输入

Name:virgo

Location:http://download./virgo/milestone/tooling

勾选Eclipse Virgo Tools插件,然后Next进行下载及安装。
安装完成后重启STS。

然后,配置Server,也就是我们使用的virgo应用服务器。

点击Add,在弹出的配置界面中选择EclipseRT下面的Virgo Runtime。

选择EclipseRT下面的Virgo Runtime并勾选create a new local server。

填写Virgo Server的Name击Browser选择下载的Virgo Server的路径。

完成后,在Server视图中可以看到我们创建的VirgoServer,下面的VmwarevFabric tc Server是这个版本的STS环境自带的,不用管。

3.4步骤四:

配置Maven。(如果不清楚Maven是什么的同学可以去Google一下,此处是Maven下载的地址http://maven./download.cgi

重启之后选择windows->preferences->Maven对maven进行配置。

建议不要使用Embedded内嵌的Maven,《Maven实战》上说不太稳定,详见《Maven实战》第47页2.7.3。

最后,让我们测试一下搭建的环境,在STS中启动Virgo Server。
可以看到virgo

启动后就是加载各个osgi的插件

打开浏览器,输入http://localhost:8080/

得到默认的启好啦,大功告成,我们的STS+Virgo初步的环境就搭建好了,下一节我们将介绍如何将Snaps集成到Virgo Server上,并演示几个官方的小demo。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多