使用 Java 将文件作为 link 导入 Eclipse 项目
Importing files as link to Eclipse project using Java
我的 Eclipse 插件需要将文件作为 link 导入到当前项目。
目前的方法是从资源管理器中拖放文件并使用以下设置:
我想使用我的 SWT window 实现相同的效果,而不是用户显示上图中看到的弹出窗口,而是我自己的 SWT window。它当前正在检查该文件是否存在于光盘上的某处,并询问它是否是要复制到的正确文件和项目 (IProject
)(麻烦从这里开始)。
我可以将文件复制到当前工作区文件夹,因为我已经有了项目名称 (IProject
),并且也可以通过代码以某种方式获取(更改的)工作区文件夹。但这些文件实际上并不是 links。
是否有任何方法可以在 Eclipse 中执行此操作,而不是在 OS 级别复制文件并以某种方式实现 link?
阅读此 link。 http://help.eclipse.org/juno/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/resInt_linked.htm。
清楚地解释了如何以编程方式创建 Link 文件。如果万一我错误地理解了您的问题,请告诉我。
根据收到的评论更新
来自 Link 的片段解释了如何以编程方式创建 Link 文件。
IProject project = workspace.getProject("Project");//assume this exists
IFolder link = project.getFolder("Link");
IPath location = new Path("C:\temp\folder");
if (workspace.validateLinkLocation(link , location).isOK()) {
try {
link.createLink(location, IResource.NONE, null);
} catch (CoreException e) {
e.printStackTrace();
}
} else {
//invalid location, throw an exception or warn user
}
现在您的工作区中有一个名为 "Link" 的 linked 文件夹,位于 "c:\temp\folder"。
我的 Eclipse 插件需要将文件作为 link 导入到当前项目。
目前的方法是从资源管理器中拖放文件并使用以下设置:
我想使用我的 SWT window 实现相同的效果,而不是用户显示上图中看到的弹出窗口,而是我自己的 SWT window。它当前正在检查该文件是否存在于光盘上的某处,并询问它是否是要复制到的正确文件和项目 (IProject
)(麻烦从这里开始)。
我可以将文件复制到当前工作区文件夹,因为我已经有了项目名称 (IProject
),并且也可以通过代码以某种方式获取(更改的)工作区文件夹。但这些文件实际上并不是 links。
是否有任何方法可以在 Eclipse 中执行此操作,而不是在 OS 级别复制文件并以某种方式实现 link?
阅读此 link。 http://help.eclipse.org/juno/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/resInt_linked.htm。
清楚地解释了如何以编程方式创建 Link 文件。如果万一我错误地理解了您的问题,请告诉我。
根据收到的评论更新
来自 Link 的片段解释了如何以编程方式创建 Link 文件。
IProject project = workspace.getProject("Project");//assume this exists
IFolder link = project.getFolder("Link");
IPath location = new Path("C:\temp\folder");
if (workspace.validateLinkLocation(link , location).isOK()) {
try {
link.createLink(location, IResource.NONE, null);
} catch (CoreException e) {
e.printStackTrace();
}
} else {
//invalid location, throw an exception or warn user
}
现在您的工作区中有一个名为 "Link" 的 linked 文件夹,位于 "c:\temp\folder"。