Mozilla JetPack 文件名无效
Mozilla JetPack Invalid Filename
我正在尝试创建使用外部 JS 文件的简单 Mozilla 附加组件;
文件夹和文件
/var/www/html/add-ons/hello
/var/www/html/add-ons/hello/index.js
/var/www/html/add-ons/hello/package.json
/var/www/html/add-ons/hello/script/data/test.js
/var/www/html/add-ons/hello/index.js
// Import the page-mod API
var pageMod = require("sdk/page-mod");
// Create a page-mod
pageMod.PageMod({
include : "*",
contentScriptFile : "./test.js",
contentScript: 'window.alert("loaded");'
});
/var/www/html/add-ons/hello/package.json
{
"title": "My Jetpack Addon",
"name": "test",
"version": "0.0.1",
"description": "A basic add-on",
"main": "index.js",
"author": "",
"engines": {
"firefox": ">=38.0a1",
"fennec": ">=38.0a1"
},
"license": "MIT",
"keywords": [
"jetpack"
]
}
/var/www/html/add-ons/hello/script/data/test.js
alert("Hello World");
命令我运行测试
cd /var/www/html/add-ons/hello
jpm init
(实际上package.json文件是通过这个命令创建的)
jpm run -b /usr/bin/firefox
(我用Ubuntu所以我运行这样)
我对其进行了实时测试,我收到 loaded
警报,但我收到以下错误;
console.error: script:
Error opening input stream (invalid filename?): resource://script/data/test.js
文件夹和文件已存在于根文件夹中。
如果这是根;
/var/www/html/add-ons/hello
不应该 resource://script/data/test.js
指的是 /var/www/html/add-ons/hello/script/data/test.js
吗?
我哪里做错了?
创建您的文件夹结构如下:
根文件夹:/var/www/html/add-ons/hello
将 index.js、package.json 放在根文件夹中。
将加载项中打包的所有数据移动到:/var/www/html/add-ons/hello/data
转到根文件夹 - /var/www/html/add-ons/hello
运行 jpm 运行 -b
这将创建一个 xpi 包,使用临时配置文件启动 firefox.exe,安装附加组件。
ex: this is from win 7 x64 test project:
root directory: E:\Training\using_Angular
Directory of E:\Training\using_Angular
11/01/2015 08:26 AM <DIR> .
11/01/2015 08:26 AM <DIR> ..
09/29/2015 05:04 PM <DIR> data
09/29/2015 05:02 PM 548 index.js
08/12/2015 08:26 PM 221 package.json
Directory of E:\Training\using_Angular\data
09/29/2015 05:04 PM <DIR> .
09/29/2015 05:04 PM <DIR> ..
09/29/2015 05:04 PM <DIR> images
08/12/2015 08:26 PM 446 lang.json
09/29/2015 05:04 PM <DIR> lib
09/29/2015 05:04 PM <DIR> scripts
09/29/2015 05:04 PM <DIR> styles
09/29/2015 05:04 PM <DIR> html
Directory of E:\Training\using_Angular\data\html
08/12/2015 08:26 PM 446 pagescript.html
在 运行 期间,'resource://' 文件夹引用打包在您的加载项中的内容。
例如:资源://caaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa/data/html/pagescript.html
我正在尝试创建使用外部 JS 文件的简单 Mozilla 附加组件;
文件夹和文件
/var/www/html/add-ons/hello
/var/www/html/add-ons/hello/index.js
/var/www/html/add-ons/hello/package.json
/var/www/html/add-ons/hello/script/data/test.js
/var/www/html/add-ons/hello/index.js
// Import the page-mod API
var pageMod = require("sdk/page-mod");
// Create a page-mod
pageMod.PageMod({
include : "*",
contentScriptFile : "./test.js",
contentScript: 'window.alert("loaded");'
});
/var/www/html/add-ons/hello/package.json
{
"title": "My Jetpack Addon",
"name": "test",
"version": "0.0.1",
"description": "A basic add-on",
"main": "index.js",
"author": "",
"engines": {
"firefox": ">=38.0a1",
"fennec": ">=38.0a1"
},
"license": "MIT",
"keywords": [
"jetpack"
]
}
/var/www/html/add-ons/hello/script/data/test.js
alert("Hello World");
命令我运行测试
cd /var/www/html/add-ons/hello
jpm init
(实际上package.json文件是通过这个命令创建的)
jpm run -b /usr/bin/firefox
(我用Ubuntu所以我运行这样)
我对其进行了实时测试,我收到 loaded
警报,但我收到以下错误;
console.error: script:
Error opening input stream (invalid filename?): resource://script/data/test.js
文件夹和文件已存在于根文件夹中。
如果这是根;
/var/www/html/add-ons/hello
不应该 resource://script/data/test.js
指的是 /var/www/html/add-ons/hello/script/data/test.js
吗?
我哪里做错了?
创建您的文件夹结构如下: 根文件夹:/var/www/html/add-ons/hello
将 index.js、package.json 放在根文件夹中。 将加载项中打包的所有数据移动到:/var/www/html/add-ons/hello/data
转到根文件夹 - /var/www/html/add-ons/hello 运行 jpm 运行 -b
这将创建一个 xpi 包,使用临时配置文件启动 firefox.exe,安装附加组件。
ex: this is from win 7 x64 test project:
root directory: E:\Training\using_Angular
Directory of E:\Training\using_Angular
11/01/2015 08:26 AM <DIR> .
11/01/2015 08:26 AM <DIR> ..
09/29/2015 05:04 PM <DIR> data
09/29/2015 05:02 PM 548 index.js
08/12/2015 08:26 PM 221 package.json
Directory of E:\Training\using_Angular\data
09/29/2015 05:04 PM <DIR> .
09/29/2015 05:04 PM <DIR> ..
09/29/2015 05:04 PM <DIR> images
08/12/2015 08:26 PM 446 lang.json
09/29/2015 05:04 PM <DIR> lib
09/29/2015 05:04 PM <DIR> scripts
09/29/2015 05:04 PM <DIR> styles
09/29/2015 05:04 PM <DIR> html
Directory of E:\Training\using_Angular\data\html
08/12/2015 08:26 PM 446 pagescript.html
在 运行 期间,'resource://' 文件夹引用打包在您的加载项中的内容。
例如:资源://caaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa/data/html/pagescript.html