`
killko
  • 浏览: 102569 次
  • 性别: Icon_minigender_1
  • 来自: 广州
博客专栏
Group-logo
Servicemix&Fu...
浏览量:0
社区版块
存档分类
最新评论
阅读更多
   有网友问我有没有osgi的demo,于是将前段时间给朋友的一个例子拿来整理了一下。
  
   首先,这个demo是在karaf下运行的,项目由三个bundle组成,会涉及自定义的console命令,服务的发布和引用。
  
   项目为maven项目,为方便构建,将三个bundle项目作为一个父项目下的三个子项目。项目经mvn package构建后,在三个子项目的target文件夹下分别生成了Calculator-1.0.jar、AddModule-1.0.jar、SubModule-1.0.jar三个bundle,这三个bundle分别为:
  
    1、Calculator bundle,负责处理console输入的命令;
    2、AddModule bundle,负责提供计算加法的服务;
    3、SubModule bundle,负责提供计算减法的服务;
   
    到http://karaf.apache.org下载karaf后,解压,将三个bundle复制到在<karaf-root>/deploy下,运行<karaf-root>/bin/karaf.bat(或karaf.sh)启动karaf,输入list,可以看到三个bundle状态均为ACTIVE,而且blueprint也是CREATE的状态。

    这时就可以输入
   
    karaf> calc:add 1 2
    1 + 2 = 3
    karaf> calc:sub 10 3
    10 - 3 = 7


可尝试停了AddModule或SubModule后,输入以上命令,看结果如何。
2
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics