簡體   English   中英

如何使用 virtualenv 在 VS Code 中調試 python? 再次

[英]How to debug python in VS Code with virtualenv? Again

我正在嘗試在 venv 中調試一個非常簡單的腳本,而 Python 調試器只是拒絕開始工作。

Python 擴展版本是 Windows 10 x64 上的 2019.10.41019。

python 版本是 3.7.1 32 位。

沒有虛擬環境的調試工作正常。 然后我在 C:\TMP\PYENV 中創建了一個 venv,並在 launch.json 中添加了一個配置:

{
    "name": "Python: PYENV",
    "type": "python",
    "request": "launch",
    "program": "${file}",
    "console": "integratedTerminal",
    "pythonPath": "C:\\TMP\\PYENV\\Scripts\\python.exe",
},

並開始調試它。 Output 在終端:

c:\TMP\PYENV>C:/TMP/PYENV/Scripts/activate.bat
(PYENV) c:\TMP\PYENV>C:\TMP\PYENV\Scripts\python.exe c:\Users\user\.vscode\extensions\ms-python.python-2019.10.41019\pythonFiles\ptvsd_launcher.py --default --client --host localhost --port 53150 c:\TMP\PYENV\myscript.py

腳本啟動,找到了 venv 中的所有本地導入 - 但我的所有斷點都被忽略了。 該腳本運行(並在某處崩潰)。

什么不見了??

我搜索了相關問題和大多數建議,以使用“python.pythonPath”定義配置。 但這在當前版本中不再有效。 它應該是我上面的示例中的“pythonPath”,或者 VS Code(或 python 擴展名?)抱怨名稱無效。

這是因為您將源代碼放在虛擬環境中,這使調試器認為它不是您的代碼而是第三方代碼。 只需將代碼移出就可以了。 或者,您可以在調試器配置中設置"justMyCode": true ,然后它將跟蹤所有代碼,而不僅僅是調試器認為您自己的代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM