本人使用的是Eclipse3.7,该方法与Eclipse的版本没有太大关系,主要是使用Run命令进行加载Felix框架。
打开Eclipse,在上方菜单栏中选择Run->Run Configurations->Java Application, 双击新建一个Run配置
Name: Start Felix
Main->Project:可以不填或者选择自己eclipse中的OSGI工程
Main->Project:填写的是Felix启动的主函数org.apache.felix.main.Main(在%Felix_Home%/bin/felix.jar中的META-INF/MANIFEST.MF文件中Main-Class的值)
Arguments->Working directory:选择Other radio然后在File System路径中选择%Felix_Home%(D:\felix-framework-4.4.1)
Classpath->User Entries中删除原有所有导入包,然后选择Add External Jar添加felix.jar(D:\felix-framework-4.4.1\bin\felix.jar)
Source选择自己需要进行Debug工程的源码
最后点击Apply
启动Start Felix,在Eclipse控制台出现如下log,输入lb显示bundle信息表示启动正常。
____________________________
Welcome to Apache Felix Gogo
g! lb
START LEVEL 1
ID|State |Level|Name
0|Active | 0|System Bundle (4.4.1)
1|Active | 1|Apache Felix Bundle Repository (2.0.2)
2|Active | 1|Apache Felix Gogo Command (0.14.0)
3|Active | 1|Apache Felix Gogo Runtime (0.12.1)
4|Active | 1|Apache Felix Gogo Shell (0.10.0)
g!
通过Felix进行OSGI调试的时候存在唯一缺点是需要用户自己通过手动加bundle文件提前制作完成,
并在Eclipse控制台中进行安装,这样就能在Eclipse的源码工程打断点进行调试了。