Can';t部署扩展(firefox)

Can';t部署扩展(firefox),firefox,firefox-addon,Firefox,Firefox Addon,在我尝试创建Firefox扩展时,我正在密切关注教程。我的扩展有以下树: backtosearch +-chrome +-content backtosearch.xul +-chrome.manifest +-install.rdf 我已经为FF创建了一个名为“扩展测试”的测试配置文件,并已将一个文件添加到配置文件扩展文件夹中”backtosearch@my.name“包含扩展文件夹的绝对路径。我已经使用extension development扩展重新加载了

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

backtosearch
  +-chrome
    +-content
      backtosearch.xul
  +-chrome.manifest
  +-install.rdf
我已经为FF创建了一个名为“扩展测试”的测试配置文件,并已将一个文件添加到配置文件扩展文件夹中”backtosearch@my.name“包含扩展文件夹的绝对路径。我已经使用extension development扩展重新加载了浏览器chrome,并重新启动了浏览器-但我没有看到新按钮

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

content backtosearch chrome/content/
overlay chrome://browser/content/browser.xul chrome://backtosearch/content/backtosearch.xul
扩展未显示在视图->工具栏或工具->插件下

谢谢你的帮助

安装.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>

根据你的描述,不清楚问题出在哪里。正如Sdwillsh指出的,最可能的原因是扩展没有注册。如果是这种情况,扩展将不会出现在工具->插件中

您可以尝试设置为true以帮助调试。也许可以先安装一个

可能的原因:

  • 您没有为“链接”文件使用正确的名称(必须与扩展名ID匹配)
  • “链接”文件内容无效(路径格式为操作系统本机)。在您的情况下,路径应以“backtosearch”结尾
  • 不正确的install.rdf。通过在Firefox中打开它(可能先重命名为.XML),您至少可以检查它是否是有效的XML——如果打开黄色屏幕,它将无效
  • 安装在错误的配置文件中,或者没有真正重新启动Firefox
如果已注册扩展名,请尝试打开
chrome://backtosearch/content/backtosearch.xul
在Firefox中(通过将其复制到位置栏)——如果出现任何错误,您应该修复它们。如果文件加载成功(可能为空),则覆盖内容存在问题,如果不看到它,很难进行调试。也许从一个已知有效的覆盖开始?

尝试运行它。它可能会告诉你错误是什么。如果是javascript错误,它肯定会告诉您

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

结果是,有几个错误

  • my install.rdf中的选项URL使用“cchrome”而不是“chrome”
  • 在我的main.js文件中,我忘记了在一行末尾有一个“;”和一个var 任务
  • 在我的xul文件中,我没有在两个属性分配之间留下空格:
    label=“string”tooltip=“string”
    • 我有一个挂起的
      ,从那里我把一行复制到下一行。这就是问题的真正原因。在代码文件中,行很长,我从来没有看到过这一部分
这种组合是完全失败的,尽管它在Mozilla验证程序中通过得很好。 在我看来,验证器应该抓住了cchrome的事情。它会捕获javascript错误


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

嘿,我在moziila自己的文档中发现了这个hello world的错误

你可以阅读:

我已经写了
作为根元素,但它需要全部小写

只需更新install.rdf=)

扩展名是否显示在工具->加载项中?有趣的是,我尝试卸载“tuttoolbar”,将文件放在桌面上,并创建一个指向它的“指针”文件,就像我为我的一样。它也不起作用。如果你不能在已经提供的帮助下对此进行排序,请将文件压缩到xpi文件中,上传到某个地方,我们将进行查看。感谢你的回复,非常感谢。我确信链接、路径和路径格式。我将启用日志记录并检查xml的有效性。我已经重新加载了chrome浏览器,关闭并重新启动了firefox,重新启动了计算机,并再次检查了链接文件是否放在了正确的目录中。(我脑海中闪过一个恐惧,最初alt配置文件被称为“ExtensionTesting”,后来被修改为“ExtensionTesting”,而它的配置文件目录名没有改变。这意味着什么吗?但是我在配置文件中安装的其他扩展显示在那里)检查后:install.rdf是有效的xml。尝试打开该路径会给我一个空白页,并且不会真正“注册”我的[enter]键或“go”键。这意味着什么?另外,我对“注册过程”有点困惑,你能再解释一下吗?Thanks又是如此之多。所以你没有说扩展是否出现在工具->插件中。如果不是,则“link”文件或扩展名的install.rdf中有问题。首先尝试在不同的配置文件中安装,如果安装失败,请发布链接文件+内容的确切路径,然后安装。rdf//Re#3:只要标题是chrome://URL,而不是“(Untitled)”,没有错误的空页面就可以了。上面的“查看源”应该显示覆盖的内容。实际上,它只是拒绝去那里。这是一个空白选项卡,因为我打开了一个新选项卡。我张贴了你提到的文件。非常感谢你的帮助。这是正确的答案。如果这篇评论被文章作者读到,请确认它是正确的,这样它就会移动到顶部。
C:\Users\Dylan\Desktop\backtosearch\
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">