在处理大型Firefox插件时,我有时会意外地发现语法错误,而我的编辑器没有捕获它。当发生这种情况,然后调用如何在调试Firefox扩展时检测语法错误
Components.utils.import("resource://modules/Foo.js")
只会无法导入或返回任何东西,没有任何一种有用的提示,以在文件中查找语法错误。当我的imports失败时,有什么办法可以让Firefox给我一些线索吗?
编辑:我解决了自己的问题,结果证明我使用的代码对全局引用了navigator
对象。什么让这特别烦人的是,代码将在浏览器中加载(如弗拉基米尔下面建议的那样),但在我的扩展中导入时仍会失败。
最终我使用了一种手动二分搜索:我会删除文件的一半,然后看看导入是否仍然失败。如果是这样,那么我会删除剩下的一半并重复。只要它没有失败,我就可以更准确地了解问题出在哪里,这使我可以继续进行二分查找或手动扫描较小的区域来查找问题。
这非常耗费时间,我仍然很感激任何关于如何加快调试过程的建议。