jakeyfly
V2EX  ›  问与答

win10 子系统用了几天 感觉不错 就有一个关于 VSCODE 调试的问题解决不了

  •  
  •   jakeyfly · Jan 8, 2018 · 3912 views
    This topic created in 3087 days ago, the information mentioned may be changed or developed.

    VSCODE 的终端改在子系统的 BASH 用子系统的 python 感觉真是好 就像在虚拟机里一样 但是 VSCODE 的调试 还是用的 WINDOWS 的 python 怎么才能把这个调试调用的也是子系统下面的 PYTHON 呢 网上查了很久 一直没结果

    10 replies    2018-01-08 20:51:10 +08:00
    h4lbhg1G
        1
    h4lbhg1G  
       Jan 8, 2018
    我只知道 WSL 可以调用 exe,从 exe 调用 WSL 应该也是可以的。但是感觉应该是船递给 bash,然后路径应该还有映射下成 /mnt 的那种
    h4lbhg1G
        2
    h4lbhg1G  
       Jan 8, 2018
    https://docs.microsoft.com/en-us/windows/wsl/interop

    路径映射不知道有没有辅助工具。cygwin 就自带一个路径互相转换的辅助工具 cygpath。
    gjquoiai
        3
    gjquoiai  
       Jan 8, 2018
    其实 python 插件的很多功能在 wsl 下都有问题,譬如重构之类的。。可以跟一下 https://github.com/Microsoft/vscode-python/issues/67 这个 issue

    前两天试着转到 wsl,发现问题多多。。还是滚回了 powershell。。
    lzvezr
        4
    lzvezr  
       Jan 8, 2018 via iPhone
    vscode 默认的调试配置用的是绝对路径,需要手动设置 tasks.json 才行,然后因为坑太多又回到 PowerShell 了
    jakeyfly
        5
    jakeyfly  
    OP
       Jan 8, 2018
    @lzvezr 路径那个没意义吧 你如何能改到子系统下面的 PYTHON 我试过了 没用
    jakeyfly
        6
    jakeyfly  
    OP
       Jan 8, 2018
    PWL 对于有 PYTHON 的人来说 没啥用其实 用 C 的 真是好
    lzvezr
        7
    lzvezr  
       Jan 8, 2018
    @jakeyfly 我用的是 nodejs,大概差不多吧
    launch.json 里设置"useWSL": true
    jakeyfly
        8
    jakeyfly  
    OP
       Jan 8, 2018
    @lzvezr 大哥 你说的是 VSCODE 吗
    lzvezr
        9
    lzvezr  
       Jan 8, 2018 via iPhone
    @jakeyfly 非常抱歉,这个确实是 nodejs 独有的,我以为 python 也适用,抱歉抱歉
    https://code.visualstudio.com/updates/v1_17#_node-debugging
    jakeyfly
        10
    jakeyfly  
    OP
       Jan 8, 2018
    @lzvezr 你这样设置了后 DEBUG 是调用 WSL 的? 这不科学啊 为啥 python 没有
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5645 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 256ms · UTC 08:06 · PVG 16:06 · LAX 01:06 · JFK 04:06
    ♥ Do have faith in what you're doing.