2012-01-22 51 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

重新调查后,问题是由一个语言环境文件和几个不良字符中的一条评论引起的。 –