2013-03-06 105 views
5

我想創建一個插件,它會給我一個在Eclipse中打開的項目中所有文件的絕對路徑列表。如何在Eclipse中使用插件獲取項目文件的絕對路徑

我試過,但我能夠得到的只是活動窗口的路徑..

我的動作代碼是:

IWorkbenchPart workbenchPart = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart(); 
    IFile file = (IFile) workbenchPart.getSite().getPage().getActiveEditor().getEditorInput().getAdapter(IFile.class); 
    if (file == null) 
     try { 
      throw new FileNotFoundException(); 
     } catch (FileNotFoundException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
    String path = file.getRawLocation().toOSString(); 
    System.out.println("path: " + path); 

在這裏,我只得到了積極window..But路徑我想列出一個項目中的所有文件的絕對路徑..主要是src文件夾下的文件...

請指導我,如果我可以用同樣的方式做,或者我需要使用一些不同的API這個。

+0

+1,即使我在尋找相同的東西,並準備在SO中發佈:) – 2013-03-06 11:58:54

+0

試試這個遍歷文件和文件夾:[https://stackoverflow.com/a/20744434/6699913](https://stackoverflow.com/a/20744434/6699913) – 2017-09-11 11:35:26

回答

5

我的研究,我發現下面的代碼會得到Eclipse的當前工作區的項目目錄的路徑:

//get object which represents the workspace 
IWorkspace workspace = ResourcesPlugin.getWorkspace(); 

//get location of workspace (java.io.File) 
File workspaceDirectory = workspace.getRoot().getLocation().toFile() 

注:您需要導入org.eclipse.core.resourcesorg.eclipse.core.runtime使用這些API的

Source

+0

thanx爲成立dude ..但我想訪問src中的所有文件文件夾,並獲得他們的絕對路徑..我可以通過一些手段遍歷工作區目錄... – user1901079 2013-03-06 13:46:52

+0

它不適用於我,我的項目可能不在工作區 – xavierzhao 2015-12-31 06:28:43

相關問題