我不知道如何在xul独立应用程序中使用jslib。
在chrome.manifest中,我添加了:
content jslib jar:chrome/content/jslib.jar!/ 在我的xul文件中有:
<script type="application/javascript" src="chrome://jslib/io/fileUtils.js" />从current.xpi下载jslib并在归档管理器中打开它,然后提取chrome/jslb.jar并将其复制到chrome/content中。
当我启动我的应用程序时,我会得到错误:
没有为chrome注册的铬包://jslib/io/fileUtils.js
更新
请注意,我不是用xulrunner运行我的应用程序,而是使用firefox运行,所以根据这些信息。,我不确定在哪里复制文件。
更新
严重失意: MZ示例经常使用jslib,但它们没有解释如何在应用程序中使用jslib。它是一个共享库,应该安装一次而不是随您的应用程序一起交付,但是我已经在火狐中安装了jslib扩展,但是运行firefox --app的xul应用程序并不使用安装在火狐中的扩展,所以我必须用我的应用程序来交付库。我喜欢创建xul应用程序的想法,但只要它完全没有文档化,就很难用它做任何事情。
即使在提取jslib并将其放在我的内容目录中之后,它也无法工作。包括fileUtils和
<script type="application/javascript"
src="chrome://myapp/content/jslib/io/fileUtils.js">
</script>在我的xul文件中,给出了大量关于fileUtils.js的警告,但仍然没有定义typeof jslib。
发布于 2013-06-17 06:54:13
如果我第一次使用firefox --app运行我的应用程序,似乎就会创建一个新的配置文件。我找到了这份档案的位置
var file = Components.classes["@mozilla.org/file/directory_service;1"].
getService(Components.interfaces.nsIProperties).
get("ProfD", Components.interfaces.nsIFile);
alert(file.path);然后,我转到firefox配置文件/home/me/..mozilla/firefox/82xw54j.default/,并在应用程序的概要目录中复制扩展目录。现在我可以像这样使用jslib了:
Components.utils.import("resource://gre/modules/FileUtils.jsm");
file = new FileUtils.File("/home");
alert(file);https://stackoverflow.com/questions/17139158
复制相似问题