osig调试技巧.docVIP

  • 21
  • 0
  • 约1.27千字
  • 约 4页
  • 2017-07-09 发布于河南
  • 举报
osig调试技巧

关于调试出错和大额小额交易的若干问题 2011-03-29 在我们进行交易调试的时候常常遇到service找不着的问题,很可能是plug-in没有起来!下面介绍两种情况: 第一种情况是plugin没有启动: 我们可以在控制台下,输入ss命令,查看bundle的state和id。如图chart-1: chart-1 若发现对应名的state,不是active,我们可以在控制台下输入命令start,然后空格,加对应bundle的id号,通过控制台打印的信息可以了解到为什么没有启动。一般情况下plugin没有启动有几种可能: 程序错误导致plugin不能启动。 配置文件出错导致plugin无法启动 依赖bundle(plugin)没有启动导致无法启动 一般情况下这三种情况下都会有报错信息出现,但是由于程序书写错误或者log4j配置问题会出现没有控制台信息的状况。我们没有及时发现的情况下进行调试时会报出找不到service的情况。我们可以通过检查日志,和使用ss命令配合start命令来检查为什么没有启动。 第二种情况是plugin启动,但是程序执行到某步时报找不到service 这种情况下一般是通过ss和start命令已经检查了plugin已经启动。 由于spring与osgi整合的特性导致,我们无法及时了解到service是否已经启动,所以这里我们要使用service命令查询服务是否启动 如果控制台上的打印信息中没有查看plugin的内容则说明service没有启动成功(registered by bundle是服务注册bundle名,等号大括号内为参数值,bundles using service 是调用到此service的bundle列表,对于lazy状态下可能没有using但是当真正发生调用后会出现在列表里) Bundle启动辅助说明: 1、点击运行—配置,然后我们可以查看对应的bundle有没有加进来。如图chart-2: chart-2 如果这里没有勾选要启动的bundle就不会启动相应的service。 2、我们建议修改com.jbsoft.msb.log4j下的log4j配置文件,指定适合自己的spring日志输出路径和输出跪着,以方便查询错误。 3、我们可以查询工程所在workspace下的\.metadata\.plugins\org.eclipse.pde.core\运行配置信息文件夹里的log日志了解osgi平台中bundle运行失败的原因来定位错误。 4、有时候发现一些错误修改后仍然报错可以把 图中的clear选项勾上,如果发现还不行就去删除工程所在workspace下的\.metadata\.plugins\org.eclipse.pde.core\运行配置信息文件夹。因为osgi的平台为了提高下次运行效率有个参数缓冲区。 5、建议全部的workspace路径,运行配型配置的name都不要出现空格及中文,这回导致osgi平台不稳定出现各种问题

文档评论(0)

1亿VIP精品文档

相关文档