我会尝试开发一些插件。 所以,我正在学习插件和听众。 我尝试使用listener和javamodel开发示例。 但是,当我访问IPackageFragmentRoot元素时,它没有做我想要的。 所以,我调试了它。然后,我看到IJavaProject元素没有打开!但是我仍然可以在eclipse中访问这个项目。
我的代码中出了什么问题?以及如何在IPackageFragmentRoot中访问?
这些是非开放状态的示例。
这是代码段。 currentProject是我在包资源管理器中选择的IProject。
if (currentProject != null) {
try {
currentProject.open(new NullProgressMonitor());
} catch (CoreException e) {
e.printStackTrace();
}
IJavaProject javaProject = JavaCore.create(currentProject);
ProjectTreeNode root = createTreeNode(javaProject.getElementName());
IPackageFragmentRoot srcFolder = javaProject.getPackageFragmentRoot("src");
root = getContents(srcFolder, root);
setInput(root);
}
添加
我在新工作区中导入了一些项目。
这是错误的方式吗?
答案 0 :(得分:0)
我假设你使用'Run as Eclipse Application'来运行和测试你的插件。
当您运行插件时,Eclipse将使用新工作区启动一个全新的Eclipse实例。此工作空间中不存在任何现有代码。您必须在此新工作区中创建包含要测试的项目的新项目。