Java “错误”;“工作区已关闭”;使用JDT解析工作区时
我想编写一个Java应用程序来显示我工作区中所有项目的名称。但我的程序总是注意到以下几点Java “错误”;“工作区已关闭”;使用JDT解析工作区时,java,eclipse-plugin,abstract-syntax-tree,eclipse-jdt,Java,Eclipse Plugin,Abstract Syntax Tree,Eclipse Jdt,我想编写一个Java应用程序来显示我工作区中所有项目的名称。但我的程序总是注意到以下几点 import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.ResourcesPlugin; public class ProjectVisitor { public ProjectVisitor() { IProject[] projects = ResourcesPlugin.getW
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();
}
}
线程“main”java.lang.IllegalStateException中的异常:工作区已关闭。
位于org.eclipse.core.resources.ResourcesPlugin.getWorkspace(ResourcesPlugin.java:411)
在myPackage.ProjectVisitor.(ProjectVisitor.java:9)
在myPackage.ProjectVisitor.main(ProjectVisitor.java:16)
以下是我创建自己的应用程序的步骤:
- Eclipse版本:3.5或更高版本
- 执行环境:JavaSE-1.8
- 是富客户端应用程序吗?(选择“否”)
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应用程序使用任何Eclipse工作区API 只有作为Eclipse或Eclipse RCP的一部分运行的Eclipse插件才能访问工作区。这是因为在Eclipse启动期间进行了大量初始化,以使工作区可用。这可能会有所帮助