2012-03-07 153 views
2

我最近接受了一個基於XUL構建的項目(單機版,使用xulrunner) - 但是我無法讓它正常運行。 我得到這個錯誤,當我嘗試使用命令行(xulrunner.exe ../application.ini -jsconsole)來啓動它:XUL獨立應用程序不啓動

無鉻包鉻註冊://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/ 

在那裏我可以開始調試任何想法?

回答

1

我想你的清單只是沒有得到加載。爲了測試我會引入故意的語法錯誤並檢查錯誤控制檯。例如。如果你把

asdfasd 

自己的行,你應該得到一個Warning: Ignoring unrecognized chrome manifest directive 'asdfasd'.在錯誤控制檯。

(注意其他專家:首先我想建議下探「文件:」前綴,避免在包名下劃線,但我測試了一個Firefox夜間,它工作正常。)

0

您的Chrome套件顯然未獲得註冊。從我所知道的,原因是假的file:前綴,你應該指定相對路徑時掉落:

content case_scenario_builder chrome/case_scenario_builder/content/ contentaccessible=yes 

順便說一句,我懷疑你從什麼地方抄contentaccessible=yes - 你應該放棄它,以及除非你知道它能做什麼。

+0

這也是我的第一個想法,但在我的測試中指定了帶'file:'前綴的相對URL ... – Nickolay 2012-03-07 21:58:04

+0

哇,我知道清單解析器對'jar:'URL有一些奇怪的特殊處理,但顯然它對'file:'做了些什麼 - 也不知道那個:) – 2012-03-07 22:09:59

2

我想通出來! 如果其他人也遇到這種情況: 這是由於默認的緩存系統和使用.jar容器而不是文件夾。 XUL環境緩存了JS和XUL文件 - 甚至在禁用這些文件之後,我必須將.jar文件中的所有內容提取到內容文件夾並更新chrome.manifest文件。

感謝您對調試的建議! - 他們幫助了這個過程。