繁体   English   中英

无法安装Crossrider Extension的调试扩展 - Firefox

[英]Failure installing the debug extension of your Crossrider Extension - Firefox

FF25.0,Fedora 18。

这只是围成一圈。 登台扩展安装,部分活动,因为扩展修改了一点dom(我想甚至后台脚本也在本地存储初始化时运行)。 并非所有扩展都可以工作,例如侧边栏和其他应该在页面加载时运行的dom注入。 但是,交叉器中的调试模式页面无法识别正在运行的扩展。

我怀疑这是由于我的代码中的错误,但似乎没有办法调试它。 当我注释掉侧边栏时,它仍然在另一次安装后显示,这让我怀疑代理/缓存正在阻碍但是在扩展URL上添加额外的GET参数没有帮助。 我已经尝试将debugger添加到extension.js 控制台是空的。 萤火虫没有报告任何错误。 扩展在chrome中运行良好,我真的不想回到空白扩展并尝试逐位添加直到失败。 必须有一个更简单的方法,比如让firefox只说“这是你的问题,就在第X行” 有任何想法吗?

[ 编辑 ]
打开一些调试选项后,我在控制台中出现错误,但点击有问题的文件/行号只会打开“Source of:...”窗口。 在谷歌浏览器中,我在调试器中获取文件,可以点击断点,刷新并捕获错误。 更重要的是,怎么样,这两个作品,而且实际工作一个“突破式的例外”选项。

[ 编辑 ]
我终于让Browser Debugger工作了。 第一个错误是NS_ERROR_XPC_BAD_OP_ON_WN_PROTO

好吧,要开始实际获取消息,您需要在此处列出的“ about:config ”中设置一些标志: Setting_up_extension_development_environment

我会复制一些......

  • javascript.options.showInConsole = true (这对我来说已经开启了)
  • browser.dom.window.dump.enabled = true
  • javascript.options.strict = true (还有我打开的调试版本)
  • devtools.chrome.enabled = true (与谷歌浏览器无关)
  • devtools.debugger.remote-enabled = true重要的一个 ,允许Firefox->Web Developer->Browser Debugger ,确保允许远程调试器,否则它撤消配置更改)
  • devtools.errorconsole.enabled = true
  • extensions.logging.enabled = true

看起来很多选项也被删除了。 这至少让我开始了。

[ 编辑 ]
这个答案还提到了“Web Developer-> Browser Debugger”(目前是空白的 - “没有来源” - 我不知道)和“Web Developer-> Browser Console”窗口(看起来似乎有相同的输出) - 窗口控制台)。

  1. 抛出所有扩展代码的巨大尝试/捕捉 至少这允许交叉驾驶员“登台”扩展安装和识别。

  2. 打印异常(我假设所有愚蠢的about:config东西必须设置为此工作)

     appAPI.ready(function($) { try { ...rest of extension code } catch (e) { console.log("#################", e); } } 
  3. 在控制台中找到错误,然后单击[object exception] 注意行号(它注入其他代码时不正确)。 还要注意我们已经设法打印一个异常,而firefox 未能打破它 FFFFFFFFFFFFFFFFFFFF

  4. 在代码中间大致添加一些换行符。

  5. 刷新。 注意行号。 如果它被更改,则错误发生在换行符之后。 如果不是错误之前。

  6. 从步骤4开始重复,直到找到错误。

  7. 花点时间思考一下这个过程的愚蠢。 (这不是针对交叉驾驶员的评论,更多是因为目前可用的简单Web开发工具和API严重缺乏)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM