[英]jpm run does NOT work with Firefox 48, or later
jpm版本是1.1.3
npm版本是2.15.8
節點版本是4.4.7
Firefox版本是48.0
index.js的內容:
var self = require("sdk/self");
console.log("************************************");
輸出“jpm run”命令
JPM [info] Starting jpm run on My Jetpack Addon
JPM [info] Creating a new profile
根據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" ]
}
jpm run
不適用於Firefox 48或更高版本的發行版 問題不是jpm
,而是你試圖在Firefox 48的發布版本中使用它。從Firefox 48開始,Mozilla已禁用將首選項xpinstall.signatures.required
設置為false
以允許未簽名的附加組件的功能要加載。 因此,您的加載項將添加到該Firefox配置文件中,但已被禁用:
jpm run
要測試你的插件,你需要安裝不同版本的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 Nightly並使用以下命令啟動jpm
:
jpm run -b nightly
nightly
這個詞是一個快捷方式,它解析為Firefox Nightly的默認位置。 根據您使用的操作系統,還可以使用其他快捷方式名稱(例如firefox
, firefoxdeveloperedition
, beta
, nightly
和aurora
)。 但是,它們無法在所有操作系統上正確解析。 您始終可以選擇指定要使用的Firefox版本的完整路徑。
使用-b
選項指定路徑的另一種方法是將JPM_FIREFOX_BINARY
環境變量更改為您希望與jpm
一起使用的Firefox可執行文件的路徑。
注意:我已經在MDN上更新了jpm的安裝文檔 ,以反映從Firefox 48開始為Firefox提供非發行版本的需要。如果您最近訪問過該頁面,則可能需要使用Ctrl - F5刷新頁面為了看到新內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.