我剛剛升級到適用於我的python應用程序的App Engine 1.7.6 SDK,並意識到當使用新的dev_appserver.py
時,斷點在PyDev(Eclipse插件)中不再起作用。App Engine 1.7.6中的PyDev斷點被破壞?
有沒有人知道一種方法來使他們再次?我假設新的服務器正在爲Web服務器產生一個新的進程,並且調試器沒有附加到該服務器上。我不知道如何配置它來做到這一點。
與此同時,我正在使用old_dev_appserver.py
服務器。
我剛剛升級到適用於我的python應用程序的App Engine 1.7.6 SDK,並意識到當使用新的dev_appserver.py
時,斷點在PyDev(Eclipse插件)中不再起作用。App Engine 1.7.6中的PyDev斷點被破壞?
有沒有人知道一種方法來使他們再次?我假設新的服務器正在爲Web服務器產生一個新的進程,並且調試器沒有附加到該服務器上。我不知道如何配置它來做到這一點。
與此同時,我正在使用old_dev_appserver.py
服務器。
更新2012-07-27:
繼評論,我覈實,問題是更新到 後問題PyDev的。 2.8和App Engine的1.8.2
已過時:
我發現這個問題下面分析在googleappengine issues tracker
之所以PDB不就是因爲dev_appserver使用 標準輸入/輸出工作用於進程間通信。 Python爲IPC:http://docs.python.org/2/library/ipc.html內置了 庫。 dev_appserver應該使用這些,然後stdin /標準輸出可以單獨留下 ,以便PDB仍然有效。
如此看來,有沒有解決辦法,而不是恢復到使用old_dev_appserver.py
UPDATE 2013年4月23日: 無力調試是煩人。 許多開發者抱怨
我這裏保持這一問題的發展軌跡: http://goo.gl/XRU01
只是要注意,2.8.0的PyDev現在支持在谷歌應用程序引擎的新的掛鉤,所以,調試應該可以正常工作了。 查看發佈詳情,網址爲:http://pydev.org/ – 2013-07-25 20:20:15
我遇到了與Dylan相同的問題,並且我確認它是使用PyDev 2.8解決的。 – 2013-07-27 11:37:48
感謝您的更新,似乎我們有足夠的證據得出結論,最終**問題已經解決。我個人認爲這花了這麼長時間是一種恥辱。 – 2013-07-28 12:41:29
你的意思是pdb.set_trace()不工作?
查找功能MonkeyPatchPdb()在谷歌/的AppEngine /工具/ dev_appserver.py
運行在自己的項目somewehere您使用PDB,它應該修復它。
MonkeyPatchPdb似乎不存在於新的dev_appserver.py中。我不確定PyDev是否使用Pdb,我只是在Eclipse IDE中設置斷點。儘管我嘗試過使用pdb.set_trace,但它導致腳本退出。 – Dylan 2013-03-20 03:58:24
它是如何工作的:將下面的代碼放在/ main.py中? 從google.appengine.tools.dev_appserver進口MonkeyPatchPdb 進口PDB MonkeyPatchPdb(PDB) – 2013-04-04 06:16:56
是的,遇到了同樣的問題。
打開運行/調試配置和設置主模塊到:
${GOOGLE_APP_ENGINE}/old_dev_appserver.py
「不再工作」是指在Eclipse IDE中不會觸發斷點。 – Dylan 2013-03-20 06:20:08
我只是想問同樣的問題 – matcheek 2013-03-20 18:18:42
我已經提交了關於AppEngine項目的一個問題:https://code.google.com/p/googleappengine/issues/detail?id=9012 – matcheek 2013-03-20 18:43:38