Java 如何在eclipse中获得当前工作台的句柄?

Java 如何在eclipse中获得当前工作台的句柄?,java,eclipse-plugin,Java,Eclipse Plugin,我正在为eclipse开发我的第一个插件。我的观点完全独立运作。当我尝试获取视图的实例时,就会出现问题。当我在线搜索时,我发现我们可以通过调用Activator.getDefault().getWorkbench().getViewRegistry()来获取视图。但是Activator.getDefault()返回null 我已经在插件的清单文件中检查了选项“加载一个类时激活此插件”,并且“Bundle ActivationPolicy”是惰性的 由于“Activator.getDefault(

我正在为eclipse开发我的第一个插件。我的观点完全独立运作。当我尝试获取视图的实例时,就会出现问题。当我在线搜索时,我发现我们可以通过调用
Activator.getDefault().getWorkbench().getViewRegistry()
来获取视图。但是
Activator.getDefault()
返回null

我已经在插件的清单文件中检查了选项“加载一个类时激活此插件”,并且“Bundle ActivationPolicy”是惰性的

由于“
Activator.getDefault()
”没有成功,我尝试了另一种方法:通过调用
PlatformUI.getWorkbench()
来获取工作台。但我收到了著名的“
工作台尚未激活”
”消息。我想我必须等到工作台被创建,然后在(!PlatformUI.isWorkbenchRunning()){}期间尝试
,但它从未通过这个循环


有人能告诉我我做错了什么吗?

您在哪里运行此代码?听起来好像你从错误的地方调用了它。我想从一个普通的java程序与我的视图交互。因此,我编写了一个小程序test.java,并从这个类的main方法中调用PlatformUI.getWorkbench()方法。它必须是一个Eclipse插件或一个完整的Eclipse RCP(可以是“无头”-无GUI)