【问题标题】:Setting up Xdebug for VSCode on Windows problem: steps are grayed out在 Windows 上为 VSCode 设置 Xdebug 问题:步骤灰显
【发布时间】:2018-11-30 10:36:27
【问题描述】:

我已经使用 XDebug 向导下载了XDebug.dll,我在 php.ini 中链接了它并添加了 enable 和 autostart 行,我在VSCODE 中安装了 XDebugextension。我已经用 idekey=VSCODE 添加了系统变量 XDEBUGCONFIG。

当我使用“Listen for XDebug”开始调试时,会出现调试控制栏,但从未到达断点,并且 Step Over、Step Into、Step Out 的控件显示为灰色。

Xdebug 已安装:2.6.1

PHP 版本:7.2.12

配置文件:C:\php\php.ini

php.ini:

zend_extension = php_xdebug-2.6.1-7.2-vc15-nts-x86_64.dll
xdebug.remote_enable = 1
xdebug.remote_autostart = 1

launch.json:

"version": "0.2.0",
"configurations": [
    {
        "name": "Listen for XDebug",
        "type": "php",
        "request": "launch",
        "port": 9000
    },
    {
        "name": "Launch currently open script",
        "type": "php",
        "request": "launch",
        "program": "${file}",
        "cwd": "${fileDirname}",
        "port": 9000
    }
  ]
}

【问题讨论】:

    标签: php windows visual-studio-code xdebug


    【解决方案1】:

    尝试将此行放入您的 launch.json XDebug 配置中:

    "localSourceRoot": "http://127.0.0.1/(your public html folder)/"
    

    否则请尝试关闭您打开的文件,备份+删除您的 .vscode 文件夹,然后重新打开 VSCode。

    【讨论】:

    • localSourceRoot 已弃用,pathMappings 是它的替代品,但我还是遇到了同样的问题(我尝试了 ${workspaceFolder} 和绝对路径)
    【解决方案2】:

    您很可能需要更新您的配置以包含类似于下面的 pathMappings 块;

    "pathMappings": {
        "/var/www/mc-dev/workflow/_src/": "${workspaceRoot}/_src/",
        "/var/www/mc-dev/workflow/_preview/": "${workspaceRoot}/_preview/",
        "/var/www/mc-dev/workflow": "${workspaceRoot}",
    }
    

    这可能不是预期的功能,但我发现你必须映射项目中的每个源目录,在上面的示例中,如果我只使用 ${workspaceRoot},这个项目将无法调试我必须映射我的 _source 和 @ 987654325@开发目录。

    如果您发现它仍然无法正常工作,我会尝试启用 "stopOnEntry" 参数,以防您有条件地丢失断点。

    我还会花点时间更新您的示例配置,以包括您尝试的路径映射,以便我们排除这种情况。

    【讨论】:

      猜你喜欢
      • 2021-03-14
      • 1970-01-01
      • 2018-04-17
      • 2020-06-20
      • 2012-10-02
      • 1970-01-01
      • 2021-12-02
      • 2019-07-19
      • 1970-01-01
      相关资源
      最近更新 更多