我正在编写一个小型Eclipse插件并对其进行一些测试。我通过指定它们在Headless Mode
中运行来启动插件测试。我想在这些测试中访问工作空间中的活动Java项目,但是当我执行它们时,工作空间是空的。我使用以下代码来获取所有Java项目(工作正常):
IWorkspaceRoot myWorkspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
for(IProject project : myWorkspaceRoot.getProjects()) {
if(project.isOpen() && isJavaProject(project)) {
IJavaProject javaProject = JavaCore.create(project);
projects.put(project.getName(), javaProject);
}
}
但是,项目总是空的。这是因为Headless Mode
启动了一个带有空工作空间的新Eclipse实例。我的问题是:我可以以某种方式指定测试应该在当前的Eclipse实例中运行,还是可以指定我想在新创建的工作空间中拥有的项目?
答案 0 :(得分:2)
我找到了一种简单的方法来设置测试workspace
并希望与您分享(即使这意味着回答我自己的问题):
Eclipse
并在光盘上的某处创建新的workspace
workspace
Eclipse
代码Plug-in Test
实例
JUnit Plug-in Test Launch Configuration
中,转到Main
标签
workspace
并填入 2) workspace
及其中的所有项目开始