在 PHP 项目中的 netbeans 7.4 中调试 Javascript


Debug Javascript in netbeans 7.4 inside PHP project

我想在 netbeans 中调试我的 php 项目中的 JavaScript 代码。我已经多次读到,这在新的 netbeans 7.4 版本中应该是可能的,例如在这里和这里,但我无法让它工作。我已经为chrome和php调试安装了de调试器连接器,但是当我尝试在.js文件中设置断点时,它说:

未解析断点,

调试器未附加到带有 ID 的选项卡。

我知道 NetBeans 页面的链接适用于 HTML 5 应用程序,但我认为此调试也会在 PHP 项目中启用。我做错了什么吗?

我知道我可以使用Firebug或Chrome本身进行调试,但我想在我的Netbeans IDE中的一个地方完成所有工作...

提前致谢

未解析的断点通常意味着您将其设置在当前未加载到 Chrome 标签页中的文件中(或者由于某种原因,IDE 无法匹配 JS 文件的 URL 和本地 JS 文件)。混合调试仅适用于嵌入式浏览器或带有 NetBeans 连接器的 Chrome(您可以在页面中看到通常为黄色的条,上面写着"NetBeans 连接器正在调试此页面",您可以同时调试 PHP 和 JS。

看看这里,虽然是关于Java EE项目的,但它与PHP项目非常相似

更新的答案:

我记得的一个问题(普通的Chrome Dev Tools也有)是,如果您将JavaScript文件附加到HTML/PHP并带有动态参数以防止浏览器缓存,例如,每次加载文件时"673612"都会更改。如果是这种情况,请尝试移除此动态属性。我认为例如 Sencha 或 ExtJS 使用此功能来"破坏"调试器。

我有一个类似的问题:javascript断点被破坏了,而其他一切都工作正常(例如php断点是可以的)。

原因是在运行配置属性中,我将项目 URL 更改为不再是主机的内容,而是由 url 重写规则管理的子文件夹。

johanvs 是正确的,但我的声誉不足以 +1。

假设一个 NetBeans 项目包含不同文件夹中的许多文件:

/var/www/index.html
/var/www/config.html
/usr/doc/readme.txt
/usr/doc/license.txt

由于"index.html"不在项目根文件夹中,而是在"/var/www"下,因此 NetBeans 不知道"http://127.0.0.1/index.html"对应于"/var/www/index.html"。 要解决此问题,请在 NetBeans -> 文件 -> 项目属性中验证以下设置:

  1. 来源 -> 网页根目录

    "var/www"

  2. 运行配置 ->项目 URL

    "http://127.0.0.1/"

  3. 运行配置 ->索引文件 ->浏览

    "索引.html"

  4. 运行配置 -> 远程连接 ->管理 ->初始目录

    "/"

  5. 运行配置 -> 上传目录

    (空)