2012-01-22 74 views
0

收到以下錯誤上傳我的分機時:國際化(I18N)我的分機,翻譯文件上傳錯誤

An error occurred: Message JSON file must be in UTF-8 encoding. 

我有大約19翻譯文件。

當我在本地運行以下命令:

file extension/_locales/[locale]/messages.json 

我得到:

extension/[locale]/messages.json: UTF-8 Unicode English text 

在少數區域的翻譯(波蘭語,加泰羅尼亞,葡萄牙語,法語,等..)我得到的以下消息

extension/[locale]/messages.json: UTF-8 Unicode English text, with very long lines 

我跟蹤了從Chrome網上商店下載到區域設置tra的上傳錯誤從'file'命令輸出「非常長的行」的nslation文件。

我不太清楚如何解決這個問題。有什麼建議?

哦,我應該提到翻譯文件:

  • 沒有一個BOM
  • 不含任何評論

UPDATE:

此錯誤是由兩個問題引起的:

  • 忘了刪除某個語言環境json文件中的評論。
  • 幾個語言環境文件中存在一個錯誤的字符。

真的讓我感到沮喪,我沒有在開發過程中遇到這個問題。來吧鉻...

回答

0

如果問題真的是鍵/值超過某個大小的限制,那麼你可以嘗試分手,超過300個字符走上多行線:

{ 
    "longMessage": { 
     "message": "This is a really long message 
        over 300 characters that has 
        been put on multiple lines" 
    } 
} 

看到這個問題的更多細節上的300個字符的限制:

https://superuser.com/questions/91660/how-long-is-long-for-the-unix-file-command

來縮小重現此錯誤,只是一個鍵/值對,這樣就可以在一個字符串運行這個測試,將是有益而不是他們全部。另外,如果你能夠縮小到一個,那麼編輯你的問題與字符串,所以我可以在本地嘗試。

+0

重新調查後,問題是由一個語言環境文件和幾個不良字符中的一條評論引起的。 –