您的位置:首页 > 编程语言 > Java开发

osgi环境问题

2015-06-23 12:01 489 查看
最近在学习osgi,遇到各种问题,有些问题相当诡异,这里记录下 

最终配置完成的 bundles是这样的  



诡异的地方就在于,上周也是这个bundle包,但是提示错误,asm包找不到 ,但是明明是有的,

这周来吧bundle删掉从新配置,抱其他的错了,

貌似是应为bean.xml是从其他地方复制过来的,里面包括复制过来的不可见内容启动提示xml错误,

修改好之后在启动,还是出错,提示缺少expression那个jar包,

这次彻底的服了,还是明明配置的有的,

没办法,把所有的bundle重新删除,只留最少的包,去掉所有的spring相关的,启动成功,

然后添加spring相关的 bundle,这次竟然成功了。

记录一下。 

不过问题来了,osgi的提示缺失有问题,往往提示内容和真正的错误差好远,而且貌似有很多缓存配置之类的东西,如果一次启动失败,再怎么启动都是失败,

所以要删除配置重新来一遍。

希望osgi发展会越来越好 

-----------------------------------

上次传的图片,不知道为什么没有显示,这次补上

说明 : 我用的是eclipse4.4的,其他是默认的, 所以发现和网上的各种教程,各种blog力的配置都不一样,这也是我比较痛苦多原因,

这里记录下,也给需要帮助的人一点点提示 。

------------------------------------

新问题:

之前做demo的时候一直提示asm无法被spring3.0找到,网上查各种asm相关的问题,没有解决。

然后这个问题就放置了,

然后过了几天我再打开那个项目的时候,竟然不在报错,好惊奇,同时又掉侥幸的心理,可能是缓存问题,不用管这个问题了,

知道今天才发现有个解决方案。

就是spring 依赖的jar包,如果先于spring.core添加进去,就没有问题。

如果spring以来的jar包,你是添加spring.core.jar之后添加进去的,很有可能会导致classnotfound的问题 。

怎么解决呢 ? 

其实很简单,把spring.core.jar这个bundle去掉,运行一次,会提示很多错误,不管它,关掉

然后重新运行一次,这时候把spring.core.jar这个bundle添加进去。就可以运行了。不会提示你明明已经加进去的bundle找不到了。

祝好//
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息