Karaf OSGi && JavaEE 通俗易懂版 实战教程入门(二)
来源:互联网 发布:金融民工 知乎 编辑:程序博客网 时间:2024/06/15 05:25
本节内容主要为介绍karaf3.0.x操作基本,让读者有个概念,然后会根据假定的项目技术需要对karaf进行模块添加使其具备JavaEE运行环境的特性,最后给出完整的指令直接型列表。阅读本文需要具备osgi、maven(karaf是基于maven管理bundle、feature的)、linux(karaf是类unix环境)的基本知识。
- osgi的基本知识
- maven的基本知识
- karaf的操作环境是类unix的,所以最好还具备些linux的基本知识,比如grep指令等等
1、Apache Karaf 入门
1.1、必须要明白的几个名词及概念
bundle:osgi中的模块
feature:一组bundle,其具备特定的功能,比如hibernate就算是一个feature,其由多个bundle组成
feature-repo:feature资源库,由一组feature组合而成,apache已经提供了一部分,可以进如etc配置文件中查看
1.2、必须要做的阅读的资料
仔细阅读Apache Karaf官方手册,了解其默认提供的特性(feature),后续都以feature称呼。
2、Karaf的Feature
karaf的feature组成结构为:
feature-repo包含feature,所有的feature都由feature-repo打包提供。
karaf/etc目录下的org.apache.karaf.features.repos.cfg文件摘要如下:
enterprise=mvn:org.apache.karaf.features/enterprise/LATEST/xml/featuresspring=mvn:org.apache.karaf.features/spring/LATEST/xml/featurescellar=mvn:org.apache.karaf.cellar/apache-karaf-cellar/LATEST/xml/featurescave=mvn:org.apache.karaf.cave/apache-karaf-cave/LATEST/xml/featurescamel=mvn:org.apache.camel.karaf/apache-camel/LATEST/xml/featurescamel-extras=mvn:org.apache-extras.camel-extra.karaf/camel-extra/LATEST/xml/featurescxf=mvn:org.apache.cxf.karaf/apache-cxf/LATEST/xml/featurescxf-dosgi=mvn:org.apache.cxf.dosgi/cxf-dosgi/LATEST/xml/featuresactivemq=mvn:org.apache.activemq/activemq-karaf/LATEST/xml/featuresjclouds=mvn:org.apache.jclouds.karaf/jclouds-karaf/LATEST/xml/featuresopenejb=mvn:org.apache.openejb/openejb-feature/LATEST/xml/featureswicket=mvn:org.ops4j.pax.wicket/features/LATEST/xml/featureshawtio=mvn:io.hawt/hawtio-karaf/LATEST/xml/featurespax-cdi=mvn:org.ops4j.pax.cdi/pax-cdi-features/LATEST/xml/featurespax-jdbc=mvn:org.ops4j.pax.jdbc/pax-jdbc-features/LATEST/xml/featurespax-jpa=mvn:org.ops4j.pax.jpa/pax-jpa-features/LATEST/xml/featurespax-web=mvn:org.ops4j.pax.web/pax-web-features/LATEST/xml/featurespax-wicket=mvn:org.ops4j.pax.wicket/pax-wicket-features/LATEST/xml/featuresecf=http://download.eclipse.org/rt/ecf/latest/site.p2/karaf-features.xmldecanter=mvn:org.apache.karaf.decanter/apache-karaf-decanter/LATEST/xml/features
有些keyname是不是很熟悉?spring、camel、cxf、openejb,这些都是常规JavaEE中常见的组件模块,karaf也提供了,区别仅仅是对其进行了osgi化。
可以查看每个feature-repo中包含的feature,这需要通过feature:list指令,结果如下图(Repository列就是指向的feature-repo,并加上了feature-repo的版本号):
3、常用操作指令
bundle安装:将指定bundle安装到osgi环境中,-s 代表安装完后立即启动该bundle
bundle:install -s mvn:commons-io/commons-io/2.2
从bundle的安装指令中就可以看出karaf使用maven对依赖进行管理,如果你对maven不熟悉,则需要去熟悉下。
feature repository安装:将指定repository的内容添加到feature list中
feature:repo-add pax-jdbc 0.6.0
feature查询:查询当前存在的feature,可以配合grep进行过滤
feature:list
feature安装
feature:install spring-web指定的feature必须是当前已经存在,可以用feature:list查询到
4、项目技术需求
- 支持mysql数据库
- 支持Spring
- 支持WebService
- 支持WebSocket
- 支持JMS
- 支持。。。
5、给karaf添加Feature
根据项目技术需求逐项给karaf添加feature,并编写Demo进行测试。
6、结尾
本节讲述了karaf的基本知识和操作,下文开始从添加需求开始一步一步给karaf添加特性。
了解karaf中的名词以及如何给karaf添加feature是非常重要的基本功,当你需要给karaf添加到常规JavaEE功能时,基本都会用到本节描述的内容。
- Karaf OSGi && JavaEE 通俗易懂版 实战教程入门(二)
- Karaf OSGi && JavaEE 通俗易懂版 实战教程入门(一)
- Karaf OSGi && JavaEE 通俗易懂版 实战教程入门(三)
- Karaf OSGi && JavaEE 通俗易懂版 实战教程入门(四)
- Karaf OSGi && JavaEE 通俗易懂版 实战教程入门(五)
- Karaf教程第8部分-分布式OSGi
- Karaf--OSGi
- osgi入门(二)
- Karaf教程第4部分 OSGi中的CXF服务
- osgi实战学习之路:2. maven+maven-bundle-plugin+karaf搭建osgi之HelloWorld
- 互联网协议入门(二)通俗易懂
- maven,OSGI,karaf 学习笔记
- OSGI-karaf安装及使用
- Karaf教程第3部分 使用OSGi Metatype服务和Felix Webconsole改善配置编辑
- Karaf教程第5部分-在OSGi中运行 Apache Camel集成
- 读《轻量级JavaEE企业应用实战(第三版)》笔记(二)
- osgi入门(一)
- osgi+camel+karaf运行环境搭建(1)
- iOS如何发布应用 - 2. iOS 开发者申请账号, certificate, provisionining
- 在windows下ftp服务器上传文件错误
- dns probe finished no internet 的解决方法
- XUtils 源码分析(二)--图片缓存模块
- 如何屏蔽搜索引擎抓取?
- Karaf OSGi && JavaEE 通俗易懂版 实战教程入门(二)
- Label的基本用法
- iOS 支付宝支付主要代码
- POJ 3259 Wormholes 【bellman-ford】
- POJ 3069 Saruman's Army(贪心)
- Karaf OSGi && JavaEE 通俗易懂版 实战教程入门(三)
- Android ListView使用convertView解决内存溢出问题
- 一个单身狗的青春
- Office 2016激活教程(附KMS激活软件)