项目中使用了OSGI的框架,最近被问到OSGI框架是什么,自己表示几乎没什么认识,于是想自己手动搭建一个OSGI小例子试一试
于是在搭建过程中遇到了下面的问题:项目启动很慢而且控制台也报了很多异常出来,虽然最后也启动了
所以就想,如何去掉控制台的那些错误信息
Caused by: java.lang.IllegalStateException: Workbench has not been created yet.
at org.eclipse.ui.PlatformUI.getWorkbench(PlatformUI.java:93)
at org.eclipse.debug.internal.ui.contextlaunching.LaunchingResourceManager.startup(LaunchingResourceManager.java:545)
at org.eclipse.debug.internal.ui.DebugUIPlugin.getLaunchingResourceManager(DebugUIPlugin.java:336)
at org.eclipse.debug.internal.ui.DebugUIPlugin.start(DebugUIPlugin.java:554)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:774)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:767)
查了相关的资料后有了以下的解决方案:
- Go to the Run configuration -> Remove all the target platform jars.
- Click on add required bundles.
- Check the
org.apache.felix.gogo.runtime
,org.apache.felix.gogo.shell
,org.eclipse.equinox.console
,org.eclipse.osgi
and your jar file. - The last and important step. Go to Setting-> check the checkbox of "Clear the configuration area before launching".
- Run the OSGi application now.
- Enjoy if it works for you as it worked for me.
按以上步骤操作设置后,问题得到解决,贴出来给大家共享
参考网址:https://stackoverflow.com/questions/13773582/workbench-has-not-been-created-yet-error-in-eclipse-plugin-programming