2012-05-15 32 views
2

我使用PyDev 2.5和Eclipse Indigo和Jython 2.5.3b1。我有一個JAR文件,其中包含某些我正在導入PyDev(Jython)項目的類。他們似乎無縫工作,除了自動完成。 Java類的成員函數不會自動完成例如按點'。'運算符不會顯示類成員函數的列表。該jar文件被添加到PyDev項目的PyDev-PYTHONPATH外部庫中。Java類方法不能使用Eclipse自動在Jython中完成Pydev

Screenshot of PYTHONPATH external libs

自動完成不適用於下面的代碼工作,但它編譯和運行完全正常。

from my.testpackage import MyClass 

myVar = MyClass("Monkey") 

print myVar.getName() 

鍵入「myVar」。沒有自動完成

值得關注的是自動完成的作品,如果我進口的非定製的罐子

例如

from java.lang import Math 

print Math.max(3,5) 

鍵入「數學」。將自動完成

我不確定此功能是否支持當前版本的PyDev。有沒有人在PyDev和Eclipse安裝程序中實際工作?

任何建議,將不勝感激。

謝謝

DM

+0

您需要詳細說明問題。如果可能,請使用導入行添加代碼。另外你如何配置你的Java構建路徑? – Kshitij

回答

2

它可能在你的PYTHONPATH配置的一些問題。您是否閱讀過:http://pydev.org/manual_101_project_conf2.html(最具體地說是頁面末尾:「Jython用戶的項目參考」)。

如果這對你沒有幫助,你能解釋你是如何參考的嗎? (配置的屏幕截圖會很好)

+0

我能夠通過遵循「Jython用戶的項目參考」指令來自動完成工作,但我注意到自動完成工作的原因是由於被引用項目中的.java源文件。自動完成似乎不依賴於.class或jar文件。最終,我希望能夠引用第三方JAR文件,並自動完成以及錯誤突出顯示工作。 – DM0

+0

我真的不想這樣做,但是,我可能會反編譯包含在jar中的類文件,並使用這些反編譯的java文件來創建一個新項目,以便它可以被PyDev項目引用。 – DM0

+0

實際上,PyDev用於Java的代碼完成由JDT插件提供,因此,如果您在JDT中創建項目並正確配置它,然後從PyDev對該項目進行引用,那麼事情應該可以解決(不需要反編譯項目或類似的東西)。唯一的問題是你還需要將該項目設置爲PyDev項目,以便它知道需要添加到PYTHONPATH(即:源文件夾,外部源文件夾和罐子)。 –

相關問題