首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在VSCode上调试Laravel应用程序

在VSCode上调试Laravel应用程序
EN

Stack Overflow用户
提问于 2018-08-04 13:12:08
回答 1查看 24.2K关注 0票数 18

是否有人成功地配置了VSCode来调试基于Laravel的网站?在阅读了大量的文章和教程之后,我已经到了可以要求VSCode“倾听XDEBUG”的地步,但是我还无法进行普通的VS风格的调试,在那里我可以点击F5在我最喜欢的浏览器中启动当前的网站,当它到达断点时它就会进入VSCode,就像我们在完全Visual或Eclipse中所做的那样。

在我的机器上正确设置了以下内容:

  • VSCode 1.25.1
  • XAMPP1.8
  • XDEBUG (配置和工作)
  • VSCode的PHP扩展

我不确定我需要在我的launch.json中使用什么启动配置。PHP扩展附带的两个配置如下所示:

代码语言:javascript
运行
复制
{
    "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
}           

虽然第一个配置工作正常(我可以在VSCode模式下开始调试,然后在浏览器中单独启动我的网站并点击断点),但第二个配置失败。它告诉我,它无法找到Controller类(这是一个Laravel类)。用命名空间限定类名也没有任何好处。

我的猜测是,这与启动配置的设置有关。它试图将活动脚本作为一个独立的单元启动,因此无法找到位于不同文件中的框架类的定义。我们必须提供启动网站作为一个单一的应用程序以某种方式。

有没有人成功地告诉我我在这里错过了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-07 12:27:16

终于起作用了。如果其他人需要的话,这里有一些东西。

  1. 确保您的Apache服务器上有建立和运行XDEBUG
  2. 安装您喜欢的浏览器的调试器扩展。Chrome、Edge和FireFox都可以使用扩展程序(可以在VSCode中搜索和安装)。
  3. 设置launch.json,以便它并行地启动两个信任。这是通过所谓的复合配置完成的.这里是我的,它启动PHP + XDEBUG和EDGE浏览器: {“版本”:"0.2.0“、”化合物“:[{”名称“:”启动和调试“、”配置“:”启动程序“、”启动本地主机“}、”配置“:{ "type":"php”、“请求”:“启动”,“名称”:“启动程序”、“启动程序”:"${workspaceRoot }“、”端口“:9000 }、{”名称“:”启动本地主机“、”键入“:”边缘“、”请求“:”启动“、"url":"http://localhost/public",”"webRoot":"${workspaceRoot}“}
  4. 根据本地设置更新上述配置,如站点地址、x调试端口等。
  5. 按F5,您的调试会话将开始。浏览器将自动启动,您将能够击中您的断点。
票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51685952

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档