在WSL下运行时,FASK不会重新加载修改后的代码

问题描述

我正在Linux计算机上开发Flask应用程序,当我修改Python源代码文件时(当在调试模式下运行时),该应用程序可以正确地重新加载自身。虽然有时我需要在Windows机器上使用WSL进行开发,但使用的是完全相同的FlaskApp源代码。这基本上工作得很好,然而,在WSL下,自动重新加载功能似乎不再起作用。我可以更改Python源代码,但不会发生任何情况-我需要手动关闭并重新启动FlaskServer。

这是WSL下的已知错误吗?我是否需要以某种方式启动烧瓶应用程序?
作为参考,下面是我如何在VS代码下启动应用程序:

"configurations": [
    {
        "name": "Run Server",
        "type": "python",
        "request": "launch",
        "module": "flask",
        "env": {
            "FLASK_APP": "run.py",
            "FLASK_ENV": "development",
        },
        "args": [
            "run"
        ],
    }
]

.它使用以下输出启动WSL下的烧瓶应用程序:

 * Serving Flask app "run.py" (lazy loading)
 * Environment: development
 * Debug mode: on
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
 * Restarting with inotify reloader
 * Debugger is active!
 * Debugger PIN: 182-804-918

我认为该输出没有问题,但仍然不能自动重新加载。
有什么想法吗?


解决方案

记录:
此问题的解决方案可在this Flask GitHub issue上找到。

相关文章