Android集成OSGI框架apache Felix的方法

Apache Felix Framework Launching and Embedding

http://felix.apache.org/site/apache-felix-framework-launching-and-embedding.html

Apache Felix Framework and Google Android

http://felix.apache.org/site/apache-felix-framework-and-google-android.html

执行下面一句(dx --dex --output=classes.dex JAR_file.jar)的时候,有一些问题需要注意,首先JAR_file.jar要指定绝对路径否则会出现zipfile包找不到JAR_file.jar包的错误其次生成的classes.dex位于dx命令的目录下,至于为什么还在研究。

Felix的用法?

http://felix.apache.org/documentation/getting-started.html

Felix是apache的开源OSGI服务框架,到 http://felix.apache.org/downloads.cgi 可以下载到最新的版本。
    解压后目录结构如下:
    felix-framework-4.2.1
        -bin
        -bundle
        -conf
        -doc
        -felix-cache是Bundle安装后的路径(运行felix后才生成)当执行uninstall BundleId时相应的Bundle就会从这个目录删除。
    bin目录下是felix.jar
    bundle下面的bundle会在启动时自动安装,可改变配置文件中的felix.auto.deploy.dir来改变自动安装的jar的路径。
    conf下面是默认的配置文件。
    1. 启动felix
         启动命令行,并定位到安装目录,
         执行 java -jar ./bin/felix.jar 这会使用默认的配置,如果需指定另一个配置文件,则要
         执行java -Dfelix.config.properties=file:<配置文件路径> -jar ./bin/felix.jar
         执行成功,我们会看到felix的 gogo已经可以使用,这是felix的shell.
     2.  执行lb可以列出当前的bundle的状态,其中bundle下的bundle会自动加载。
          install file:<Bundle路径>
          start bundleID
          这样就可以安装和启动一个bundle了

osgi bundle的包结构以及打包方法?

http://book.51cto.com/art/201302/381159.htm

maven如何使用?

maven创建工程的方法:http://blog.csdn.net/xiayaxin/article/details/4955466

maven用途、核心概念、用法、常用参数和命令、扩展http://trinea.iteye.com/blog/1290898

mvn的语法形式:mvn 目标 参数。

例如:mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook

maven的目标分为生命周期目标和插件目标。mvn install是是生命周期目标。mvn archetype:create的形式是插件目标,archetype是插件id,create是目标id。

maven如何构建osgi bundle包?

andoird工程的编译过程以及如何使用命令行开发?

编译打包过程:

注意dex工具现在是dx.bat

apkbuilder是appt

jarsigner在java目录的bin下

http://www.cnblogs.com/devinzhang/archive/2011/12/20/2294686.html

http://www.cnblogs.com/jk1001/archive/2010/08/05/1793216.html

http://www.2cto.com/kf/201112/113560.html

签名过程:

http://www.cnblogs.com/qianxudetianxia/archive/2011/04/09/2010468.html

http://www.cnblogs.com/ok-lanyan/archive/2013/04/02/2995462.html

http://blog.csdn.net/centralperk/article/details/7425593

dx工具的用法?

dx --dex --output=classes.dex JAR_file.jar

java的类是在什么时候加载的?

http://www.cnblogs.com/macula7/archive/2010/01/20/1960543.html

Bundle共享Java虚拟机,这样的不同的bundle之间才能相互引用package。

用eclipse开发bundle工程

http://www.cnblogs.com/eastson/archive/2012/05/15/2501610.html

eclipse开发bundle工程时导入非bundle第三方jar包的方法 http://jn1981.blog.163.com/blog/static/5386450201053091552576/

maven工程依赖第三库的配置

http://10305101ivy.blog.163.com/blog/static/5847658920121086653149/

如何使用maven开发osgi bundle?

首先使用一下命令创建工程

mvn archetype:create -DgroupId=com.pitayatech.zigbee -DartifactId=common -DpackageName=com.pitayatech.zigbee.common -Dversion=0.1

参考:http://www.blogjava.net/xzclog/archive/2011/07/08/353930.html创建普通的maven-archetype-quickstart工程即可,这个工程就是默认工程,故可以不指定-DarchetypeArtifactId默认创建的也是maven-archetype-quickstart类型的工程。

然后修改pom.xml文件配置使用maven-bundle-plugin插件创建bundle

最后使用mvn bundle:bundle创建bundle

maven-bundle-plugin插件的用法http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html 

osgi标准

http://www.osgi.com.cn/article/7289394

如何将依赖包添加到maven库?

mvn install:install-file -Dfile=lib/lwjgl/lwjgl.jar -DgroupId=org.lwjgl -DartifactId=lwjgl -Dversion=2.0rc1 -Dpackaging=jar

maven POM.xml详解

http://blog.csdn.net/qianzhiyong111/article/details/7002797

OSGI bundle的打包方法及注意事项

http://blog.csdn.net/qianzhiyong111/article/details/7018231

用eclipse建立插件工程然后导出为jar,也可以创建bundle

还可以用maven 用maven-pax-plugin创建,用maven-bundle-plugin生成bundle

OSGI bundle using Android API

http://dz.prosyst.com/pdoc/mbs_mobile_2.0.3/android/developer/android_intent.html

http://stackoverflow.com/questions/18299057/osgi-bundle-using-android-api

http://dz.prosyst.com/pdoc/mbs_mobile_2.0.3/android/developer/introduction.html

http://stackoverflow.com/questions/18587855/full-android-support-for-osgi-bundles?rq=1

注意如果使用嵌入式felix可能会因为没有/data/davlik-cache的权限而启动bundle失败











  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值