Java Eclipse插件外部的Eclipse工作区引用
我正在运行以下代码:Java Eclipse插件外部的Eclipse工作区引用,java,eclipse,workspace,Java,Eclipse,Workspace,我正在运行以下代码: import org.eclipse.core.resources.IWorkspace; import org.eclipse.core.resources.ResourcesPlugin; public class WorkspaceTest { public static void main(String[] args) { IWorkspace workspace = ResourcesPlugin.getWorkspace();
import org.eclipse.core.resources.IWorkspace;
import org.eclipse.core.resources.ResourcesPlugin;
public class WorkspaceTest {
public static void main(String[] args) {
IWorkspace workspace = ResourcesPlugin.getWorkspace();
}
}
我得到以下错误:
Exception in thread "main" java.lang.IllegalStateException: Workspace is closed.
如何获取非eclipse插件的工作区引用
(要在此处运行代码:)
首先,它可以简单地表示您不是在Eclipse下运行,而是在标准Java应用程序下运行 对于eclipse插件,您不需要过早地调用它(就像在创建工作区之前)。这意味着对于非eclipse插件,您可能必须以某种方式创建一个工作区,因为您将无法引用eclipse中已经存在的工作区
另外,您必须确保在构建路径中没有
org.eclipse.core.resources
,而是在plugin manifest.mf文件中作为依赖插件。(见)因此,
ResourcePlugin
没有被eclipse实例化(尽管您仍然可以用代码调用ResourcePlugin
类)
另请参阅以了解其他想法。首先,它可以简单地表示您不是在Eclipse下运行,而是在标准Java应用程序下运行 对于eclipse插件,您不需要过早地调用它(就像在创建工作区之前)。这意味着对于非eclipse插件,您可能必须以某种方式创建一个工作区,因为您将无法引用eclipse中已经存在的工作区
另外,您必须确保在构建路径中没有
org.eclipse.core.resources
,而是在plugin manifest.mf文件中作为依赖插件。(见)因此,
ResourcePlugin
没有被eclipse实例化(尽管您仍然可以用代码调用ResourcePlugin
类)
有关其他想法,请参见。>此外,您必须确保您没有。。。你是说它不能在插件之外完成吗?或者你是说我需要找到另一种方法来实例化ResourcePlugin?据我所见,似乎你必须从eclipse中运行的插件(而不是独立的Java应用程序)中访问工作区。我如何将其作为插件而不是Java应用程序运行?你可以将其作为“eclipse应用程序”运行,谢谢。但是我如何在这里运行这个项目呢?(下载此项目的链接位于“参考资料”[1]下)。在作为一个“Eclipse应用程序”启动之后,我只看到Eclipse打开,我看不到其他任何东西。>另外,您必须确保您没有。。。你是说它不能在插件之外完成吗?或者你是说我需要找到另一种方法来实例化ResourcePlugin?据我所见,似乎你必须从eclipse中运行的插件(而不是独立的Java应用程序)中访问工作区。我如何将其作为插件而不是Java应用程序运行?你可以将其作为“eclipse应用程序”运行,谢谢。但是我如何在这里运行这个项目呢?(下载此项目的链接位于“参考资料”[1]下)。在作为一个“Eclipse应用程序”启动之后,我只看到Eclipse打开了,我什么也看不到。您解决了您的问题了吗?如果是这样的话,你可以在这里贴出对你有效的确切解决方案作为答案(让我来投票。)我现在也面临着这个问题。那么你是如何解决这个问题的呢,愿意分享吗?你解决了你的问题了吗?如果是这样的话,你可以在这里贴出对你有效的确切解决方案作为答案(让我来投票。)我现在也面临着这个问题。那么你是如何解决这个问题的,愿意分享吗?