【问题标题】:How do I convert a package.json to install.rdf for a Firefox add-on?如何将 package.json 转换为 Firefox 附加组件的 install.rdf?
【发布时间】:2015-05-05 14:50:28
【问题描述】:

我有一个适用于 Firefox 的可用插件,它是使用 cfx 工具构建的。从 Firefox 38 开始,该工具已被弃用,取而代之的是 jpm。我按照说明进行切换,但在运行时,我经常收到 undefined 一词,即使插件运行良好。

JPM undefined Starting jpm run on Magnetz
Creating XPI
JPM undefined XPI created at C:\Temp\example@add-on-1.0.0.xpi (133ms)
Created XPI at C:\Temp\example@add-on-1.0.0.xpi
JPM undefined Creating a new profile

论坛中有人建议未定义来自install.rdf 文件,我没有。我只有一个package.json,这是基于cfx 的进程所需要的。

查看典型install.rdf 文件的内容,它似乎包含或多或少与package.json 相同的数据。有什么方法可以将package.json 转换为install.rdf

我实际上找不到最近更新的 install.rdf 插件,大多数链接都在谈论基于 XUL 的旧插件。

我也很困惑为什么基于 Python 的工具 (cfx) 偏爱基于 JavaScript 的 package.json 文件,而基于 JavaScript 的较新工具 (jpm) 偏爱可能已弃用的基于 XML 的 @ 987654336@.

【问题讨论】:

    标签: firefox firefox-addon firefox-addon-sdk package.json jpm


    【解决方案1】:

    有一个从 cfx here 转换到 jpm 的指南。简而言之,您不必创建自己的 install.rdf 文件,cfx 和 jpm 都会为您创建一个。 Install.rdf 是一个老旧的 xml 文件,但它是扩展在 Firefox 中工作所必需的。

    package.json 文件有一个“标题”字段,您可以添加该字段以便为您的插件提供一个“显示名称” - 这将替换旧的“完整名称”字段。

    至于您看到的“JPM 未定义”消息 - 我认为这实际上是 JPM 中的一个错误。

    【讨论】:

    • AMO 开发中心上的指南有类似的信息,但他们都没有明确告诉我 install.rdf 是在什么时候创建的,或者我如何要求它这样做。我需要在我现有的插件文件夹中 jpm init 吗?
    • install.rdf 是 jpm 在运行 jpm xpi 时创建的,请参阅 jpm 源代码中的 this function
    • 好吧......所以,就像你说的,我的“未定义”问题可能与 index.rdf 根本无关,而且我一直在叫错树......
    猜你喜欢
    • 1970-01-01
    • 2021-08-07
    • 1970-01-01
    • 1970-01-01
    • 2011-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-06
    相关资源
    最近更新 更多