对于我正在处理的项目之一,我必须使用 DOM Inspector 来调试 Firefox 扩展。
DOM 检查器的问题在于它只在代码下方显示浏览器,无法分离浏览器或并排显示代码部分或浏览器。
它对我不起作用,因为我正在调试的插件有一个很大的 xul 覆盖,并且有问题的区域位于底部,因此没有物理方式可以查看该区域的代码以及该区域本身。
所以我决定修改 DOM Inspector 本身,将浏览器放在代码编辑器的一侧。
以下是我采取的步骤:
- 从配置文件目录中获取现有的 xpi 文件。
- 把它改成了一个拉链。
- 进入内部并
inspector.jar
使用jar -xf <filename>
- 去
inspectorOverlay.xul
并更改<vbox id="bxInspectorMain">
为hbox。(这应该足以水平放置这两个窗口。) - 然后我使用
jar cf
. - 压缩目录,确保名称相同并将扩展名更改回 xpi。
但是,当我尝试运行它时,会收到以下警告:
Warning: WARN addons.xpi: Add-on is invalid: [Exception... "Component returned failure code: 0x80520006 (NS_ERROR_FILE_TARGET_DOES_NOT_EXIST) [nsIZipReader.getInputStream]" nsresult: "0x80520006 (NS_ERROR_FILE_TARGET_DOES_NOT_EXIST)" location: "JS frame :: resource://gre/modules/XPIProvider.jsm :: loadManifestFromZipReader :: line 740" data: no]
Source File: resource://gre/modules/XPIProvider.jsm
Line: 740
Warning: WARN addons.xpi: Could not uninstall invalid item from locked install location
Source File: resource://gre/modules/XPIProvider.jsm
Line: 2042
我的问题是 - 我通常需要进行哪些其他更改才能正确解释 xpi?