2012-09-20 67 views
4

我需要以編程方式檢查項目的構建路徑是否已包含指定的庫。這是一個快速解決方案,要知道這是否已經「固定」,不能成爲問題。通過eclipse插件訪問項目構建路徑

我有權訪問當前的IInvocationContext,因此(相當於一些角落)到相應的IProject對象。

如何檢查哪些庫在其構建路徑中已被引用?

回答

5
  1. 使用JavaCore(在jdt.core中)從IProject創建一個IJavaProject(使用create()方法)。這個IJavaProject是一個IProject,能夠回答關於該項目的Java環境問題。
  2. 的IJavaProject有,你可以用它來查詢的類路徑項目

我會留在這,但讓我知道如果您需要更多信息的findType()方法的幾個變種。

+0

謝謝,這幫了很大的忙! 對於有同樣問題的其他人: 'IJavaProject.getRawClasspath()'給了我所有的條目,然後我檢查了'entry.getEntryKind()'(在我的情況下:'IClasspathEntry.CPE_CONTAINER')和'entry.getPath()'如果他們適合我的圖書館。 –

+1

謝謝,這工作。使用'myProject.hasNature(JavaCore.NATURE_ID)',你可以檢查'create()'調用是否成功。 –