使用 PyCharm 调试扭曲的应用程序
Debugging twisted application using PyCharm
我花了几个小时试图配置 PyCharm 来调试我的应用程序。我一直在寻找解决方案,但 twisted 似乎并不那么受欢迎,而且支持也很薄弱。下面我把我得到的错误日志。
/usr/local/bin/python3.4m -u /Applications/PyCharm CE.app/Contents/helpers/pydev/pydev_run_in_console.py 57276 57277 /usr/bin/twistd -y /Users/artur/projs/private/elanga-web/start_app.tac
Running /usr/bin/twistd
PyDev console: starting.
Traceback (most recent call last):
File "/usr/bin/twistd", line 7, in <module>
import _preamble
ImportError: No module named '_preamble'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Applications/PyCharm CE.app/Contents/helpers/pydev/pydev_run_in_console.py", line 68, in <module>
globals = run_file(file, None, None)
File "/Applications/PyCharm CE.app/Contents/helpers/pydev/pydev_run_in_console.py", line 28, in run_file
pydev_imports.execfile(file, globals, locals) # execute the script
File "/Applications/PyCharm CE.app/Contents/helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "/usr/bin/twistd", line 9, in <module>
sys.exc_clear()
AttributeError: 'module' object has no attribute 'exc_clear'
Process finished with exit code 1
Couldn't connect to console process.
如果能回答为什么没有像_preamble
这样的模块,我将不胜感激
在 OS X 上,/usr/bin/twistd
是安装到系统 python 中的一个 Twisted 版本。这不是 python 3.4。您看到的症状不是缺少 _preamble
模块(实际上应该安装 而不是 ,这就是周围有 except
块的原因导入捕获异常)而是你在某个随机 python 2 程序中指向 python 3.4。
如果你想运行 python 3.4,你需要创建一个安装了Twisted的python 3环境。请记住,并非所有 Twisted 都已移植,因此您只能使用一部分 API。 python 3 还没有移植的东西之一是 twistd
命令行,所以还没有办法 运行 twistd
和 python 3。
我花了几个小时试图配置 PyCharm 来调试我的应用程序。我一直在寻找解决方案,但 twisted 似乎并不那么受欢迎,而且支持也很薄弱。下面我把我得到的错误日志。
/usr/local/bin/python3.4m -u /Applications/PyCharm CE.app/Contents/helpers/pydev/pydev_run_in_console.py 57276 57277 /usr/bin/twistd -y /Users/artur/projs/private/elanga-web/start_app.tac
Running /usr/bin/twistd
PyDev console: starting.
Traceback (most recent call last):
File "/usr/bin/twistd", line 7, in <module>
import _preamble
ImportError: No module named '_preamble'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Applications/PyCharm CE.app/Contents/helpers/pydev/pydev_run_in_console.py", line 68, in <module>
globals = run_file(file, None, None)
File "/Applications/PyCharm CE.app/Contents/helpers/pydev/pydev_run_in_console.py", line 28, in run_file
pydev_imports.execfile(file, globals, locals) # execute the script
File "/Applications/PyCharm CE.app/Contents/helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "/usr/bin/twistd", line 9, in <module>
sys.exc_clear()
AttributeError: 'module' object has no attribute 'exc_clear'
Process finished with exit code 1
Couldn't connect to console process.
如果能回答为什么没有像_preamble
在 OS X 上,/usr/bin/twistd
是安装到系统 python 中的一个 Twisted 版本。这不是 python 3.4。您看到的症状不是缺少 _preamble
模块(实际上应该安装 而不是 ,这就是周围有 except
块的原因导入捕获异常)而是你在某个随机 python 2 程序中指向 python 3.4。
如果你想运行 python 3.4,你需要创建一个安装了Twisted的python 3环境。请记住,并非所有 Twisted 都已移植,因此您只能使用一部分 API。 python 3 还没有移植的东西之一是 twistd
命令行,所以还没有办法 运行 twistd
和 python 3。