文章分类 - OSGI
摘要:获取服务有两种方式: ①用引用获取; ②用服务跟踪器获取。
阅读全文
摘要:可以直接注册,也可以使用服务工厂注册。 ①直接注册: public void start(BundleContext bundleContext) throws Exception { Activator.context = bundleContext; EnHelloworld hs = new
阅读全文
摘要:bundle的类加载器用来加载该bundle中的类和资源。 其中,类加载器在加载类时:Import-packages和Require-Bundle大于Bundle-Classpath。 这种设定是ClassNotFoundException的罪魁祸首之一: 具体的类加载顺序: ...
阅读全文
摘要:如图: 依照深度优先的原则,包存在循环导出的情况。这种情况,实际中并不会出现问题,因为OSGI框架采用了类似深度优先遍历算法的处理方法,对已经遍历过的节点打上标记,就不会出现循环了。
阅读全文
摘要:设存在bundleA, 在导入的时候,很容易出现错误。 概念一:包的“拆分”:当存在多个bundle导出了同一个包p时,就说此时存在包的"拆分",此时需要根据依赖规则进行设置筛选,否则会出错。 筛选优先级:Import-Packages = uses > Require-Bundle。如果采用这三种
阅读全文

浙公网安备 33010602011771号