- gemini-blueprint-1.0.0 的bug
- org.eclipse.gemini.blueprint.io.OsgiBundleResourcePatternResolver在构造函数空指针的异常,情景模拟参考另一篇博文http://blog.csdn.net/yangjun2/article/details/6805014
- Spring Base Test类中的logger属性 protected的,在贡献给ibm后,并没有修改,gemini-blueprint包名修改了,无法继承.
- xml的配置
- <osgi:reference id="OsgiService" interface="serviceinterface"
availability="optional" timeout="5000"/> availability="optional"相当cardinality="0..1" availability="mandatory"相当于cardinality="1..n" timeout 配置RetryTemplate中的timeout的时间,即尝试等待失败的引用的 Service的时间 ,单位毫秒.
- <osgi:reference id="OsgiService" interface="serviceinterface"
- integration test 注意事项
gemini-blueprint-test-1.0.0.RELEASE.jar\org\eclipse\gemini\blueprint\test\internal\boot-bundles.properties
- gemini-blueprint-test-1.0.0.RELEASE.jar
指定依赖的各种包的版本,使用的是LocalFileSystemMavenRepository,所以要先要用maven将需要的包download到local
- maven 的加入,通过修改pom.xml将需要引入的包download到本地。
- 在project目录下新建target\test-classes目录,用于打包生成的测试代码到bundlefile。
- 测试框架会建立eclipse_config\org.eclipse.osgi\bundles用于将jar包copy到bundlfile(jar包),然后为Test类新建一个TestBundle-testSimple-类名的bundle
- 缺省支持junit3.8
否则调用reader.accept()方法时报NoSuchMethod的错误.
- 使用到了asm类,但是缺省先加载jre/lib/ext目录下的包,先检查是否有asm的类先加载,例如btrace时引入的包dcevm.jar就包含了asm包,比2.2.3版本高。