Редактирование существующего дополнения Firefox
Для одного из проектов, над которым я работаю, я должен использовать DOM Inspector для отладки расширения Firefox.
Проблема с инспектором DOM заключается в том, что он показывает только браузер под кодом, нет способа отсоединить браузер или раздел кода или браузер рядом.
Это не сработало для меня, потому что плагин, который я отлаживал, имел большой xul оверлей, и проблемная область была у основания, поэтому нет физического способа увидеть код для области, а также для самой области.
Поэтому я решил изменить сам DOM Inspector, чтобы разместить браузер рядом с редактором кода.
Вот шаги, которые я предпринял:
Взял существующий xpi файл из каталога профиля.Изменил это, чтобы быть почтовым индексом.Зашел внутрь и извлекinspector.jar
с помощьюjar -xf <filename>
Пошел вinspectorOverlay.xul
и изменился<vbox id="bxInspectorMain">
быть hbox. (Этого должно быть достаточно, чтобы расположить эти два окна горизонтально.)Затем я воссоздал файл JAR, используя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 был правильно интерпретирован?