无法部署扩展(firefox)

时间:2009-11-04 18:26:19

标签: firefox firefox-addon

当我尝试创建Firefox扩展时,我正在密切关注教程here。我的扩展名有以下树:

backtosearch
  +-chrome
    +-content
      backtosearch.xul
  +-chrome.manifest
  +-install.rdf

我为FF创建了一个名为“扩展测试”的测试配置文件,并在配置文件扩展文件夹“backtosearch@my.name”中添加了一个文件,其中包含扩展文件夹的绝对路径。我已经使用扩展开发扩展重新加载了浏览器chrome并重新启动了浏览器 - 但我看不到新的按钮。

我简化了教程(因为我只需要一个按钮),而我的.xul只包含它。我的chrome.manifest文件包含:

content backtosearch chrome/content/
overlay chrome://browser/content/browser.xul chrome://backtosearch/content/backtosearch.xul

扩展程序未在视图下显示 - >工具栏或工具 - >附加元件

感谢您的帮助

的install.rdf

<?xml version="1.0"?>

<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     xmlns:em="http://www.mozilla.org/2004/em-rdf#">

    <Description about="urn:mozilla:install-manifest">

        <!-- Required Items -->
        <em:id>backtosearch@dylan.lloyd</em:id>
        <em:name>Back To Search</em:name>
        <em:version>1.0</em:version>

        <em:targetApplication>
            <Description>
                <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
                <em:minVersion>1.5</em:minVersion>
                <em:maxVersion>3.5.*</em:maxVersion>
            </Description>
        </em:targetApplication>

        <!-- Optional Items -->
        <em:creator>Dylan Lloyd</em:creator>
        <em:description>Adds options to return to your last search immediately.</em:description>
        <em:homepageURL>http://www.getyourkeywords.com/</em:homepageURL>

    </Description>
</RDF>

backtosearch@dylan.lloyd

C:\Users\Dylan\Desktop\backtosearch\

3 个答案:

答案 0 :(得分:2)

嘿,我在mozilla自己的文档中发现了这个问候世界的错误。

您可以继续阅读: https://github.com/oschrenk/firefox-extension

I had written

<RDF xmlns="http://www.w3.org/1999/02/22-RDF-syntax-ns#"
     xmlns:em="http://www.mozilla.org/2004/em-RDF#">
    <Description about="urn:mozilla:install-manifest">

as the root element, but it needs to be all lowercase

<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     xmlns:em="http://www.mozilla.org/2004/em-rdf#">
    <Description about="urn:mozilla:install-manifest">

只需更新install.rdf =)

即可

答案 1 :(得分:1)

根据您的描述,目前尚不清楚问题所在。最可能的原因,正如sdwilsh指出的那样,扩展没有注册。如果是这种情况,则扩展程序不会出现在工具中 - &gt;附加元件。

您可以尝试将extensions.logging.enable pref设置为true以帮助调试。也许先尝试安装helloworld extension

可能的原因:

  • 您没有为“链接”文件使用正确的名称(必须与扩展程序ID匹配)。
  • “链接”文件内容无效(路径格式为OS-native)。在您的情况下,路径应以“backtosearch”结束
  • install.rdf不正确。您可以通过在Firefox中打开它来检查它至少是有效的XML(可能首先重命名为.xml) - 如果黄色屏幕打开,则它无效。
  • 安装在错误的配置文件中或者没有真正重启Firefox。

如果已注册扩展程序,请尝试在Firefox中打开chrome://backtosearch/content/backtosearch.xul(将其复制到位置栏) - 如果出现任何错误,则应修复它们。如果文件加载成功(可能为空),则覆盖的内容存在问题,如果没有看到它就很难调试。也许从已知有效的叠加开始?

答案 2 :(得分:0)

尝试通过Mozilla's Add-On Validation page运行它。它可能只是告诉你错误是什么。如果是javascript错误,它会告诉你肯定的。

现在,我遇到了同样的问题 - 当我加载我的插件时,我的工具栏没有出现,即使插件显示在“工具&gt;插件”中,当我点击“选项”按钮时,一切都冻结了

原来,有几个错误。

  • 我的install.rdf中的选项包含“cchrome”而不是“chrome”。
  • 在我的主.js文件中,我忘了“;”在带有var的行的末尾 分配。
  • 在我的xul文件中,我没有在两个属性分配之间留出空格:label="string"tooltip="string"
    • 我有一个悬挂</toolbarbutton>从我复制一行到下一行。这就是真正导致问题的原因。在代码文件中,行很长,我从未见过那部分!

组合完全失败,即使它在Mozilla Validator中正常通过。 在我看来,应该的确认者已经抓住了cchrome的事情。它发现了javascript错误。

无论如何,我告诉你,如果这可能是你的问题。