2013-09-30 56 views
1

我一直在开发运行Ubuntu 12的本地开发机器,开发Symfony2.3.5应用程序。intl和icu配置

一切运作良好,直到我上传的代码和跨越这来了:

Could not load the resource bundle "/home/project/public_html/vendor/symfony/icu/Symfony/Component/Icu/Resources/data/region/en.res". 

服务器当前正在运行的以下内容:

CENTOS 5.9 x86_64 standard WHM 11.38.2 (build 7) 

在南国,我通过EasyApache安装intl安装程序,但我仍然收到此错误。

This installed ICU 3.6。我的开发版本是4.8.1,所以大约10年更新。

ICU版本是问题吗?这是我能看到的唯一的东西。

我建的应用程序是en-only。除英语(英国)外,不需要使用任何其他语言。

有没有人有任何想法/修复?

感谢

回答

3

的Symfony 2.3需要国际扩展是>= 4.0版本(大于4.4版最好),因为它是依赖于symfony/intl组件。

作曲家将下载不同版本的symfony/intl,并根据您的开发ICU版本将其锁定在您的composer.lock中。

这意味着,如果您在ICU大于4.4的系统上开发,则无法在ICU < 4.4上安装服务器。

请阅读文档章节ICU and Deployment Problems

更新您的国际扩展在我的答案here建议:

sudo aptitude install php5-intl 

...或添加

"require: { 
    "symfony/icu": "1.0.*" 
} 

composer.json

+0

我升级我的ICU版本,并给它一个去! –

0

为我工作安装的symfony /国际

"symfony/intl": "2.5.5", 

php composer.phar update symfony/intl