问题描述
Flask Debug的时候,可能会无法进入断点。我使用的是pycharm CE版本。
解决方案
- 确保pycharm安装路径不带空格。(带空格路径导致debug程序启动报错)
- Gevent compatible,这个东西老的pycharm版本必须勾选它,新的版本不能勾选它(也许flask版本不同导致,不太确定)
- Clean Python Compiled files (改完Gevent的设置后,需要清理已编译的文件,不然不生效)
- Debug运行程序,选择你flask在的python文件就行了:
flask入口程序python文件长下面这样
app = Flask(__name__)if __name__ == '__main__':app.run(host='0.0.0.0', port=5001)
- 启动日志长这样:
python.exe -X pycache_prefix=C:\Users\xx\AppData\Local\JetBrains\PyCharmCE2024.1\cpython-cache D:/soft/JetBrains/PyCharm_Community_Edition_2024.1/plugins/python-ce/helpers/pydev/pydevd.py --multiprocess --save-signatures --qt-support=auto --client 127.0.0.1 --port 63002 --file D:\python_work\dify\api\app.py
Connected to pydev debugger (build 241.14494.241)* Serving Flask app 'app'* Debug mode: off
2024-06-26 08:07:37.346 INFO [MainThread] [_internal.py:97] - WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.* Running on all addresses (0.0.0.0)* Running on http://127.0.0.1:5001* Running on http://10.1.1.12:5001
注意主程序不要设置debug=True,不然会reload,然后新版本的pycharm又不能进断点了。