《深入理解OSGi:Equinox原理、应用与最佳实践》笔记_1_运行最简单的bundlehelloworld
买了周大大的OSGI的书看 先前完全没有基础 就靠这本书看看学学 顺便记一些笔记
今天先跳到了第5章的equinox启航部分
第一个简单的helloworld就遇到了问题....
因为eclipse版本和书中不同 用书中所说得到的全是异常....
搜索有关资料以后可以运行正常了 以此来记录一下:
在较新版本的eclipse中 不能通过java -jar org.eclipse.osgi_版本号.jar -console 正常启动了
原因在: http://stackoverflow.com/questions/9905607/equinox-start-error-console-bundle-is-missed
我也没有尝试这种方法 直接在eclipse中搭建
新下了eclipse 选了最新release的equinox的SDK
两者版本如下:
(下载地址分别为:http://www.eclipse.org/downloads/ 和 http://download.eclipse.org/equinox/ )
书中的helloworld源码是chapter 5中的 可以去hzbook上下载 不过那边下载速度挺慢的
我传了一份到百度网盘上 如果这样做是非法的 麻烦告知 会立即删除:
http://pan.baidu.com/s/1ksaeM
首先把sdk导入安装一下equinox的插件 这里只需要安装core-sdk就可以了:
(上面是灰的因为我已经装好了 把Group Items by category的钩子去掉 不然什么都没有)
安装完毕后 像平常导入java项目一样导入bundlehelloworld项目
之后配置一下debug configuration
可以直接右击项目选择debug然后配置
也可以在run上面的菜单里选择:
新建一个debug的配置规则
接下去和书中不同了 书中只有一个target platform的jar包 因为书中的eclipse比较老了 这样做会产生带来很多异常 用较新的eclipse 要带上其他的jar才可以:
如上
然后apply 然后debug就可以出现(run也同理)结果