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.youkuaiyun.com/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.youkuaiyun.com/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.youkuaiyun.com/qianzhiyong111/article/details/7002797
OSGI bundle的打包方法及注意事项
http://blog.youkuaiyun.com/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失败