2014-10-30 86 views
1

我想在eclipse插件上打印文件rep.xml的绝对路径。eclipse中项目文件的绝对路径

我已经把文件rep.xml路径
C:\Program Files\Eclipse\Documents\Eclipse\samplePlugin\resources\rep.xml.

我尝试了用file.getLocation()打印下。
它返回C:/Program Files/eclipse/Documents/runtime-EclipseApplication

如何在eclipse中打印绝对路径。请帮忙。

+0

这是绝对路径。该文件位于运行时工作区中,与开发工作区中的文件无关。 – 2014-10-30 11:52:34

+1

注意:如果你想从你的插件中读取一个文件,你不使用'IFile',那么就有一个独立的API来读取插件文件。 – 2014-10-30 12:01:05

+0

这只是一个普通的xml文件。如何在插件运行时获取该文件的路径?请帮忙 – TheGaME 2014-10-30 12:05:47

回答

5

如果你想读一个文件,是你的插件的一部分使用:

Bundle bundle = Platform.getBundle("your plugin id"); 

URL url = FileLocator.find(bundle, new Path("path relative to the plugin"), null); 

URL fileUrl = FileLocator.toFileURL(url); 

File file = new File(fileUrl.getFile()); 

... read file using normal Java file APIs 

您还可以使用FrameworkUtil获得其避免了硬编码插件ID捆绑:

Bundle bundle = FrameworkUtil.getBundle(getClass()); 

为您提供Bundle包含给定的类。

+0

@ greg-449 ..真的非常感谢代码。它工作没有任何错误。干杯! – TheGaME 2014-10-30 16:23:22