首页 > 代码库 > OSGI公共jar包管理

OSGI公共jar包管理

1、将所有需要公用的jar包集中放置到一个公共的模块中。在这个公共模块中,首先将这些jar包加载到classpath中,然后在MANIFEST文件中Runtime标签的Exported Packages部分加入需要对外暴露的包路径(Exported Packages即MANIFEST.MF文本编辑页面中的Export-Package)。

 

2、在需要使用公共类的模块中。将模块中的MANIFEST文件中Dependecies标签的Imported Packages中加入这些类所在的包路径(也就是上一步公共模块中暴露出来的包路径,Imported Packages也就是MANIFEST.MF文本编辑页面中的Import-Package)。虽然可以在Required Plug-ins中引入boundle名称,完成该模块对公共模块中包的以来,但是最好使用Imported Packages中引入这些包路径,因为这样能更明确的指定引入的包,而且防止公共模块jar包移除后导致的代码错误问题。

 

3、保证模块中代码编译通过,部署服务,启动程序,打开一个使用公共类的页面,如果出现ClassNotFound的错误,则需要考虑是在该模块还是在公共模块中加入缺少的包,如果该模块没有出现编译错误,一般都是在公共模块中缺少对应的包,引入即可。