2013-09-30 98 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