如何在Eclipse插件项目中更改IWorkspaceRoot的路径

时间:2011-06-15 12:23:23

标签: java path eclipse-plugin project

我的问题是从Eclipse插件项目中打开一个项目 我有一个效果良好的示例代码,但我的项目不在Workspace中。 它位于WorkspaceRoot路径中的文件夹中。我必须将路径设置为“workspaceRootPath / AFolder”是否可能?

            IProgressMonitor progressMonitor = new NullProgressMonitor();
            IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
            IProject project = root.getProject(pName);
            project.open(progressMonitor);

感谢。

2 个答案:

答案 0 :(得分:2)

好的,简短的回答是你想要的是不可能的。工作区根目录将包含.metadata和项目文件夹(包含.project文件)。 Eclipse不支持workspaceRoot/dir/subproj1,subproj2等。

您可以做的一件事是在工作区外的单独文件夹中创建子项目,然后在eclipse中创建一个指向外部项目的项目。您必须在工作区中为它们指定不同的名称,即使它们在磁盘上是相同的:例如:pass1/subProj1pass2/subProj1必须命名为subProj1subProj1_pass2在工作区中。

PW

答案 1 :(得分:0)

看一下jdt的JavaCore类。

从我的记忆中我想要记住,create(IResource资源)方法将从给定文件夹创建一个Java项目。

这有帮助吗?


修改

要回答评论问题,您可以执行以下操作:

IPath path = Path.fromPortableString( "abc/def" );
IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
IFolder folder = workspaceRoot.getFolder( path );
IResource resource = folder;

e.g。