OSGi程序开发调试手段中,最重要的一个是通过OSGi的命令行,通过OSGi命令行,可以查看bundle状态,安装、卸载bundle,启动、停止bundle。关于OSGi命令行调试可以参考这篇文章。Explore Eclipse’s OSGi console
当时当你的OSGi程序是一个Web程序(如RAP)且Web容器是Tomcat,此时OSGi bundle是被Tomcat拉起来的,屏幕终端被Tomcat重定向了,不能登录到终端做执行OSGi bundle的命令了。当然只是不同直接通过启动脚本的console连接到OSGi,但是还是有方法。
1、在相对于tomcat的 webapp/${yourapp}/WEB-INF/web.xml 文件中,找到init-param这个节点,增加下面这个节点,设置param-name为 commandline,设置param-value为 -console 8888,其中8888为端口号,可以自定义。
2、启动Tomcat后,上面监听的端口可以通过telnet连接上去
telnet youripaddr 8888
3、这时候就是连接到了OSGi控制台,你可以做调试了。
注意这个端口是没有任何认证的,可以直接连接上去,因此,在实际发布代码中一定不能有。
本文链接:http://www.yunweipai.com/12.html
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/53109.html