我有一个可以使用cfx
工具构建的Firefox附加组件。从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
论坛中有人建议undefined来自install.rdf
文件,我没有。我只有一个package.json
,这是基于cfx
的流程所需要的。
查看典型install.rdf
文件的内容,它似乎包含与package.json
或多或少相同的数据。有没有办法将package.json
转换为install.rdf
?
我实际上无法找到最近更新的install.rdf
加载项,大多数链接都在谈论旧的基于XUL的加载项。
我也很困惑为什么基于Python的工具(cfx
)支持基于JavaScript的package.json
文件,而较新的基于JavaScript的工具(jpm
)赞成有争议的弃用的基于XML的install.rdf
。
答案 0 :(得分:0)
有一个从cfx here过渡到jpm的指南。简而言之,您不必创建自己的install.rdf文件,cfx和jpm都会为您创建一个。 Install.rdf是一个古老的Java文件,但扩展在Firefox中完全可用。
package.json
文件有一个“标题”字段,您可以添加该字段以便为您的插件提供“显示名称” - 这将取代旧的“fullName”字段。
至于你看到的'JPM undefined'消息 - 我认为这实际上是JPM中的一个错误。