jpm run不适用于Firefox 48或更高版本

CHI*_*URY 5 javascript firefox firefox-addon firefox-addon-sdk jpm

jpm版本是1.1.3
npm版本是2.15.8
节点版本是4.4.7
Firefox版本是48.0

index.js的内容:

var self = require("sdk/self");  
console.log("************************************");
Run Code Online (Sandbox Code Playgroud)

输出"jpm run"命令

JPM [info] Starting jpm run on My Jetpack Addon  
JPM [info] Creating a new profile
Run Code Online (Sandbox Code Playgroud)

根据index.js文件的内容,*应在控制台上输出一行符号.但是,欲望输出不在控制台中.

代码有问题吗?

我的package.json文件的内容:

{  
  "title": "My Jetpack Addon",  
  "name": "temp",   
  "version":  "0.0.1",  
  "description": "A basic add-on",
  "main": "index.js",    
  "author": "",   
  "engines": {  
      "firefox": ">=38.0a1",  
       "fennec": ">=38.0a1"   },   
   "license": "MIT",  
   "keywords": [  
      "jetpack"   ]  
}
Run Code Online (Sandbox Code Playgroud)

Mak*_*yen 12

jpm run 不适用于Firefox 48或更高版本的发行版

问题不是jpm,而是你正试图与Firefox 48的发行版本的火狐48的使用它,Mozilla已经禁用设置首选项的能力xpinstall.signatures.required,以 false允许未签名的附加软件来加载.因此,您的加载项将添加到该Firefox配置文件中,但已被禁用:

jpm run
Run Code Online (Sandbox Code Playgroud)

使用jpm run禁用加载项

您需要安装和使用不同版本的Firefox

要测试您的插件,您需要安装不同版本的Firefox并使用该-b选项jpm run来分辨jpm要使用的Firefox版本.假设您不想使用旧版本的Firefox,您可以选择Firefox Developer Edition,Firefox Nightly,Unbranded Beta或Unbranded Release.

[注意(2016-08-11):我在过去几天的测试表明,Firefox 48的Unbranded Release版本和Firefox 49.0b2的Unbranded Beta版本存在的问题不是48或49而是那些版本是Nightly或Developer Edition.当前的Developer Edition(50.0a2)或Nightly(51.0a2)中不存在这些问题.换句话说,我有一个加载项,可以在Developer Edition(50.0a2)和Nightly(51.0a2)中使用,并且可以在Developer Edition(49.0a2)和Developer Edition(48.0a2)中工作,但是它没有在Unbranded Release(48.0)或Unbranded Beta(49.0b2)中工作.因此,我建议不要在此时使用非品牌版本的Firefox.]

最简单的方法是每晚下载Firefox并开始jpm使用:

jpm run -b nightly 
Run Code Online (Sandbox Code Playgroud)

每晚使用jpm run -b启用加载项

这个词nightly是一个快捷方式,它解析为Firefox Nightly的默认位置.根据你使用的是什么操作系统,还有可用于其它的快捷方式的名称(如firefox,firefoxdeveloperedition,beta,nightly,和aurora).但是,它们无法在所有操作系统上正确解析.您始终可以选择指定要使用的Firefox版本的完整路径.

使用-b选项指定路径的另一种方法是将JPM_FIREFOX_BINARY环境变量更改为您希望与之一起使用的Firefox可执行文件的路径jpm.

注意:我已经更新了MDN上jpm 的安装文档,以反映从Firefox 48开始需要非Firefox版本.如果您最近访问过该页面,则可能需要使用Ctrl- F5按顺序刷新页面看到新内容.