我想编写一个Java应用程序,它在我的工作区中显示项目的所有名称。但我的程序总是注意如下。
Exception in thread "main" java.lang.IllegalStateException: Workspace is closed.
at org.eclipse.core.resources.ResourcesPlugin.getWorkspace(ResourcesPlugin.java:411)
at myPackage.ProjectVisitor.<init>(ProjectVisitor.java:9)
at myPackage.ProjectVisitor.main(ProjectVisitor.java:16)
以下是我创建自己的应用程序的步骤:
安装Java开发工具( JDT )
创建一个满足以下所有选项的空白eclipse插件:
添加名为 org.eclipse.core.resources_3.10.1.v20150725-1910.jar的<.jar
按如下方式创建 ProjectVisitor.java 。
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.ResourcesPlugin;
public class ProjectVisitor {
public ProjectVisitor() {
IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
for (IProject project : projects) {
// do something to display its name
}
}
public static void main(String[] args) {
ProjectVisitor m = new ProjectVisitor();
}
}
以“Java Application”身份运行。
请帮帮我。提前致谢。
答案 0 :(得分:5)
您不能使用普通Java应用程序中的任何Eclipse工作区API。
只有作为Eclipse或Eclipse RCP的一部分运行的Eclipse插件才能访问工作区。这是因为在Eclipse启动期间进行了大量初始化以使工作空间可用。