OSGI无法导入外部JAR包问题解决思路

本文主要介绍了如何解决OSGI无法安装外部JAR包的问题,分析了问题产生的原因,并详细讲解了OSGI导入导出包的规范,包括通过版本、提供者、自定义属性等过滤方式进行包导入和导出的配置方法。
摘要由CSDN通过智能技术生成

解决OSGI无法安装外部JAR包的问题

** 关于这个问题网上大多采用通过Exlipse的BND插件将JAR包OSGI化的方式解决,这里提供一种工作中实践过的另一种解决方法。

先分析一下出现这个问题的原因,该问题是由OSGI的Bundle依赖导致的,OSGI(开放服务网关)是一套以Java为技术平台的动态模块化规范。Bundle是OSGI的基本单位,它是服务(Service)和组件(Component)的载体,通俗一点理解:Bundle就是模块。在OSGI中各个Bundle之间是相对独立、对外隔离的,因此,正常情况下它们是不能互相访问内部包的,需要通过OSGI的规范来配置各个Bundle才能实现Bundle之间的访问调用。实际上当我们通过Maven向OSGI导入一个外部的JAR包时,我们导入的这个JAR包需要被OSGI化,只有这样JAR包才能被OSGI识别并管理,下面是我解决问题所使用的配置:

在pom.xml中添加如下配置:

<!-- 先添加需要依赖的JAR包 -->
<dependency>
    <groupId>commons-beanutils</groupId>
    <artifactId>commons-beanutils</artifactId>
    <version>1.9.2</version>
</dependency>

<!-- 由BND来完成JAR包的OSGI化 -->
<build>
  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值