2016-03-28 29 views

回答

3

我假設你正在開發的Eclipse CDT的插件。

沒有更多的上下文我不能給你一個完整的答案。然而,一個Eclipse CDT項目的指標可以被重建如下:

CCorePlugin.getIndexManager().reindex(project); // reindex 
               // note: project is an ICProject 
CCorePlugin.getIndexManager().joinIndexer(IIndexManager.FOREVER, pm); // wait for the indexing job to complete. 

爲了CCorePlugin需要依賴添加到包org.eclipse.cdt.core到您的插件的MANIFEST.MF訪問類。

+0

太棒了!有效!我只有IProject,所以我得到了ICProject:'CCorePlugin.getDefault()。getCoreModel()。getCModel()。getCProject(iproject.getName())' –

+0

太棒了!另一種獲得'ICProject'的方法:如果你有一個'ICElement'類型的對象(例如'ITranslationUnit'),你可以通過它的'.getCProject()'方法獲得該元素屬於的'ICProject'。似乎比使用項目名稱更清潔一點,但它是你的選擇:) – silflow