从插件中获得绝对路径:
Test Plugin.getDefault().getStateLocation().makeAbsolute().toFile().getAbsolutePath());通过文件得到Project:
IProject project = ((IFile)o).getProject();通过文件得到全路径:
String path = ((IFile)o).getLocation().makeAbsolute().toFile().getAbsolutePath();得到整个Workspace的根:
IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();从根来查找资源:
IResource resource = root.findMember( new Path(containerName));从Bundle来查找资源:
Bundle bundle = Platform.getBundle(pluginId); URL fullPathString = BundleUtility.find(bundle, filePath);得到Appliaction workspace:
Platform.asLocalURL(PRODUCT_BUNDLE.getEntry( "" )).getPath()).getAbsolutePath();得到runtimeworkspace:
Platform.getInstanceLocation().getURL().getPath();从编辑器来获得编辑文件
IEditorPart editor = ((DefaultEditDomain)(parent.getViewer().getEditDomain())).getEditorPart(); IEditorInput input = editor.getEditorInput(); if (input instanceof IFileEditorInput) { IFile file = ((IFileEditorInput)input).getFile(); }