2012-04-18 102 views
2

我使用pydev開發pyclutter應用程序。 Clutter被添加到解釋器路徑中,並位於強制內建列表中,但雜亂的名稱空間中的所有對象都顯示爲「缺少導入」錯誤(即紅色的波形曲線)。有沒有辦法*真的*強制pydev使用強制內建?

是否有另一種方法來強制pydev的內省更強大?我懷疑它可能比平常更難反思混亂的內容,因爲它使用pygobject將對象從共享的C庫中提取出來,但是如果我使用in-IDE python調試器查看模塊的內容,包裝全部出現。

感謝,

回答

2

好吧,如果你添加一個對象有(比方說,「mypy.lib」)的PyDev將創建一個殼,導入模塊中它(即:進口mypy.lib),並做了目錄中(即:dir(mypy.lib))。

如果由於某種原因,dir()確實在命令行中工作,但不能在代碼完成中工作,那麼這可能是PyDev中的一個問題,但我認爲真正的問題是某些庫並不真正在你訪問某個'known'屬性時暴露他們在dir()上的內容,在這種情況下,目前實現它的唯一方法是創建一個具有實際接口的模塊(然後根據需要訪問事物)或提供「預定義完成「 - 請參閱http://pydev.org/manual_101_interpreter.html

編輯:如果上面的情況沒有幫助,通常是一個PYTHONPATH錯誤配置問題(即:添加任何模塊後,你應該去解釋器配置並添加缺少的路徑 - 只需添加/刪除它ually會這樣做,但請注意,如果實際路徑本身沒有任何變化,則可以進入解釋器配置頁面,然後按'apply'並選擇解釋器重新編制索引) - 請讓我知道這是否仍然存在不是你的問題(只是要注意,我在這裏安裝了混亂,它對我來說工作正常)。

+0

看來,類是在目錄(模塊)http://cl.ly/2e1b1U0s2t1B2h0g1c3g和我已經仔細檢查,它是在強制builtins http://cl.ly/0I001j3U3q263r1C1e2u – PerilousApricot 2012-04-19 11:05:23

+0

我已經doublechecked正確的目錄被添加到系統中PYTHONPATH http://cl.ly/3W182s3I2b0h1m160q1P – PerilousApricot 2012-04-20 18:38:25

+0

實際上,PYTHONPATH不正確。您不應該添加site-packages/clutter,只會添加site-packages(事實上,您不應該在site-packages下添加任何其他目錄--PYTHONPATH應該只包含安裝該庫的父目錄 - 即:包含雜亂目錄的文件夾(它又包含'__init __。py') – 2012-04-20 19:50:54

相關問題