2012-03-31 59 views
0

我正在开发一个插件,需要 检索java文件的路径/文件名。无法在eclipse插件中检索选择的java文件名/路径

我编写的代码成功检索xml或清单文件的文件名/路径 ,但无法检索程序包中Java文件的路径。

我已经使用的代码是: -

如果(选择的instanceof IStructuredSelection)

{ 
     Object o = ((IStructuredSelection) selection).getFirstElement(); 
     if (o instanceof IFile) 
     { 
      IPath loc = ((IFile) o).getLocation(); 
      if (loc != null) 
      { 
        selectedFile = loc.toOSString(); 

      } 
      else 
       selectedFile = "Error at loc"; 
     } 
     else 
      selectedFile = "Error at O"; 
    } 

请帮我在这,尽快。 焦急等待。 谢谢。

回答

1

有了您的帮助,我能想出一个SLOUTION:

Object o = ((IStructuredSelection) selection).getFirstElement(); 

然后

IPath loc = ((ICompilationUnit) o).getPath(); 

然后

selectedFile = loc.toOSString(); 

有了这个,你就能获取路径您选择的java文件的名称。还显示了从项目名称开始的路径名。

+0

如果您有新的/附加的问题,请提出一个新问题。这不是一个论坛。 – oers 2012-04-04 13:42:12

+0

对不起,会这样做:) – Hitesh 2012-04-05 08:20:26

0

而不是告诉你一个完整的解决方案,我会告诉你如何找到它......

  1. 放在“如果(邻的instanceof的IFile)”行一个破发点。
  2. 以调试模式运行。
  3. 选择一个Java文件。
  4. 使用调试器的变量视图来检查变量“o”。
  5. 确定调试器为此变量显示的类型。
  6. 查找此类型的来源并检查其API。

我相信,如果您按照这些步骤操作,您将得到一个解决方案。

+0

我正在尝试那个,因为我们说..谢谢你很多。 – Hitesh 2012-04-02 10:20:24

+0

我必须说,我是这个日食的新事物。被告知在我从未使用过的软件上开发项目..我只知道java/C++/c语言。我现在被困在第4步,第5步。真的不明白,你想要我做什么...对不起:( – Hitesh 2012-04-02 10:29:21

+0

请帮我,尽快找到我的查询解决方案。在这个插件中,我有很少的时间,plz帮助 – Hitesh 2012-04-02 10:35:11