XUL独立应用程序无法启动

时间:2012-03-07 15:46:18

标签: xul xulrunner

我最近接手了一个基于XUL构建的项目(独立,使用xulrunner) - 但是我无法让它正常运行。 当我尝试使用命令行(xulrunner.exe ../application.ini -jsconsole)启动它时出现此错误:

  

没有为chrome注册chrome包://case_scenario_builder/content/case_scenario_builder.xul

chrome.manifest文件如下所示:

content case_scenario_builder file:chrome/case_scenario_builder/content/ contentaccessible=yes
content jslib jar:chrome/jslib.jar!/ 
skin case_scenario_builder skin file:chrome/case_scenario_builder/skin/
locale case_scenario_builder en-US chrome/case_scenario_builder/locale/en-US/

关于我可以开始调试的任何想法?

3 个答案:

答案 0 :(得分:2)

我明白了! 万一其他人也遇到这种情况: 这是由于默认情况下缓存系统和使用.jar容器而不是文件夹。 XUL环境缓存了JS和XUL文件 - 甚至在禁用它们之后,我不得不将.jar文件中的所有内容解压缩到内容文件夹并更新chrome.manifest文件。

感谢您对调试的建议! - 他们帮助了这个过程。

答案 1 :(得分:1)

我猜你的清单只是没有加载。要测试我是否会引入故意语法错误并检查错误控制台。例如。如果你把

asdfasd

在它自己的行上,您应该在错误控制台中获得Warning: Ignoring unrecognized chrome manifest directive 'asdfasd'.

(请注意其他专家:最初我想建议删除'file:'前缀并避免包名中的下划线,但我每晚都在Firefox上测试它,它运行正常。)

答案 2 :(得分:0)

您的Chrome包显然没有注册。据我所知,原因是伪造的file:前缀,你应该在指定相对路径时删除它:

content case_scenario_builder chrome/case_scenario_builder/content/ contentaccessible=yes
是的,我怀疑你是从某个地方复制了contentaccessible=yes - 你应该放弃它,除非你知道它的作用。