在jdt中,如果它链接到项目,如何检索jar的绝对路径?

时间:2012-08-04 11:31:13

标签: java jar eclipse-jdt

我正在为eclipse 4.2编写一个插件,它将上传用户添加到项目中的jar。 为了做到这一点,我需要检索类路径中的jar的位置。 问题是,据我所知,IJavaProject没有区分链接jar和复制jar。 所以当我使用IClasspathEntry来检索jar的位置时,返回的值是项目中的一个位置而不是jar的真实位置。

有谁知道如何检索它?

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找一种方法来查找项目内部jar的文件系统位置。

Eclipse工作区使用与本地文件系统相似但与实际文件系统不同的抽象。有一些API可以从IResource转换为文件系统位置。

通常,IClasspathEntry将在调用getPath时返回工作空间相对位置。因此,要获取类路径条目的文件系统位置,请执行以下操作:

ResourcesPlugin.getWorkspace.getRoot().getFile(entry.getPath()).getLocation();