2017-07-27 80 views
0

我正在創建一個IntelliJ插件,並且正在使用JavaParser作爲我的一個功能。我的插件將允許用戶單擊方法旁邊的陰影圖標並自動導航到與該方法相關的測試。Intellij - 查找src目錄的路徑

要做到這一點,temporerily我已經使用了線:

typeSolver.add(new JavaParserTypeSolver(new File("/home/webby/IdeaProjects/project00/src/")));

我的問題是,我需要給定模塊的源文件夾傳遞到這種類型的解算器。有沒有什麼辦法可以通過編程方式找到源文件夾?也許來自actionEvent?

actionEvent.getData(PlatformDataKeys.PROJECT).getBasePath()

這給我:「/家庭/威比/ IdeaProjects/project00 /」,但我掙扎,看我怎麼能得到

我已經大致如下的行嘗試的事情源文件夾?我覺得應該有一個相當簡單的方法來使用IntelliJ的SDK來做這件事,但我還沒有在文檔或任何其他地方發現任何東西。

歡迎任何解決方案!

非常感謝, 詹姆斯

回答

1

您可以使用

ModuleRootManager.getInstance(module).getSourceRoots() 

到模塊的訪問源根。詳情請參閱IntelliJ SDK Docs

BTW IntelliJ IDEA爲Java文件的語法樹提供了特殊的API,它比其他IDE功能與外部JavaParser更高效地集成。

最好在a special forum上提問關於IntelliJ IDEA API的問題。