2010-11-02 98 views
1

我想在Ubuntu上运行的Eclipse/PyDev中调试Google AppEngine项目。使用AppEngine开发服务器在PyDev中调试控制台

调试通常工作正常,但我无法在调试控制台中评估表达式。我相信控制台正在启动AppEngine服务器并暂停等待AppEngine开发服务器结束,因此我无法获得评估提示。

这是在调试控制台输出:

pydev debugger: warning: psyco not available for speedups (the debugger will still work correctly, but a bit slower) 
pydev debugger: starting 
/home/eric/src/google_appengine/google/appengine/tools/appcfg.py:42: DeprecationWarning: the sha module is deprecated; use the hashlib module instead 
    import sha 
/home/eric/src/google_appengine/google/appengine/tools/dev_appserver_login.py:33: DeprecationWarning: the md5 module is deprecated; use hashlib instead 
    import md5 
INFO  2010-11-02 22:00:13,657 appengine_rpc.py:153] Server: appengine.google.com 
INFO  2010-11-02 22:00:13,679 appcfg.py:414] Checking for updates to the SDK. 
INFO  2010-11-02 22:00:14,010 appcfg.py:428] The SDK is up to date. 
WARNING 2010-11-02 22:00:14,011 datastore_file_stub.py:818] Could not read datastore data from /tmp/dev_appserver.datastore 
INFO  2010-11-02 22:00:14,080 dev_appserver_main.py:443] Running application manualent on port 8080: http://localhost:8080 

注意,它永远不会打印在控制台用于输入表达式的端部的提示进行评估。

任何想法如何让提示正常出现,以便我可以在调试过程中评估表达式?

回答

1

您是否考虑过使用AppEngine交互式控制台来代替您的应用程序?

http://code.google.com/appengine/docs/python/tools/devserver.html#The_Development_Console

目前正在使用Python解释这就是为什么你永远不会得到一个提示(因为它只是一个解释,这是已在使用)的服务器;如果你想在服务器上下文中运行Python表达式,开发控制台就是你想要使用的。

还有提供一个更“控制台样”版本的交互式Python会话从第三方开发商:http://con.appspot.com/console/help/about

+0

不知道它,谢谢 – 2010-11-02 22:20:22

0

尝试使用远程调试能力 - 我在Apache + mod_wsgi的碰上可能类似的问题和解决的它通过设置stdoutToServer=TruesterrToServer=True路由输出到PyDev的远程调试器:为指针

from pydevsrc import pydevd;pydevd.settrace('192.168.2.8', stdoutToServer=True, stderrToServer=True)