2016-12-29 60 views
0

我有一個穩定的項目已經投產一年了,但是現在有一些升級的時候了。我想安裝一個新的軟件包,但我不想更新任何其他軟件包到他們的新版本。Symfony2作曲家在不更新其他依賴關係的情況下安裝一個新的軟件包

當我部署項目我做composer.phar install女巫安裝供應商從composer.lock文件與正確的版本。這裏一切都很好。

我無法做composer.phar update,因爲它會更新所有的供應商+它拋出了100個依賴性錯誤。

我想只是一個新的供應商。

我composer.json看起來是這樣的:

"require": { 
     "php": ">=5.3.9", 
     "symfony/symfony": "2.7.*", 
     "doctrine/orm": "^2.4.8", 
     "doctrine/doctrine-bundle": "~1.4", 
     "symfony/assetic-bundle": "~2.3", 
     "symfony/swiftmailer-bundle": "~2.3", 
     "symfony/monolog-bundle": "~2.4", 
     "sensio/distribution-bundle": "~4.0", 
     "sensio/framework-extra-bundle": "^3.0.2", 
     "incenteev/composer-parameter-handler": "~2.0", 
     "friendsofsymfony/user-bundle": "~1.3", 
     "sonata-project/core-bundle": "dev-master", 
     "sonata-project/admin-bundle": "dev-master", 
     "sonata-project/doctrine-orm-admin-bundle": "dev-master", 
     "sonata-project/datagrid-bundle": "dev-master", 
     "sonata-project/classification-bundle": "dev-master", 
     "sonata-project/easy-extends-bundle": "dev-master", 
     "sonata-project/media-bundle": "dev-master", 
     "sonata-project/intl-bundle": "dev-master", 
     "sonata-project/user-bundle": "dev-master", 
     "sparkling/adyen-bundle": "^0.3.4", 
     "sylius/translation-bundle": "^0.15.0", 
     "sylius/shipping-bundle": "^0.15.0", 
     "sylius/resource-bundle": "0.15.*", 
     "sylius/payment-bundle": "0.15.*", 
     "winzou/state-machine-bundle": "^0.2.2", 
     "sylius/currency-bundle": "^0.15.0", 
     "sylius/money-bundle": "^0.15.0", 
     "ddeboer/data-import-bundle": "dev-master", 
     "eko/feedbundle": "1.2.5", 
     "ed/blog-bundle": "v1.0.3", 
     "knplabs/knp-paginator-bundle": "dev-master", 
     "hwi/oauth-bundle": "^0.3.9", 
     "facebook/php-sdk-v4": "^5.1", 
     "friendsofsymfony/jsrouting-bundle": "^1.6", 
     "knplabs/knp-snappy-bundle": "^1.3", 
     "oneup/uploader-bundle": "~1.3", 
     "suncat/mobile-detect-bundle": "^0.10.2", 
     "friendsofsymfony/elastica-bundle": "^3.1", 
     "beberlei/DoctrineExtensions": "^1.0", 
     "stfalcon/tinymce-bundle": "1.0" 
    }, 

在列表中最後一個包:"stfalcon/tinymce-bundle": "1.0"是我想要安裝的軟件包。我手動添加了這個。

添加軟件包後我試圖做的事:

php -d memory_limit=-1 composer.phar update stfalcon/tinymce-bundle --with-dependencies 

這仍然拋出錯誤:

[email protected] MINGW64 /c/wamp64/www/karpedeal (develop) 
endenciesmemory_limit=-1 composer.phar update stfalcon/tinymce-bundle --with-depe 
Warning: This development build of composer is over 60 days old. It is recommended to update it by running "composer.phar self-update" to get the latest version. 
Loading composer repositories with package information 
Updating dependencies (including require-dev) 
Your requirements could not be resolved to an installable set of packages. 

    Problem 1 
    - The requested package sensio/distribution-bundle == 3.0.31.0 is satisfiable by sensio/distribution-bundle[v3.0.31] but those are rejected by your minimum-stability. 
    Problem 2 
    - The requested package sonata-project/intl-bundle == 2.2.3.0 is satisfiable by sonata-project/intl-bundle[2.2.3] but those are rejected by your minimum-stability. 
    Problem 3 
    - The requested package knplabs/knp-paginator-bundle == 2.5.0.0 is satisfiable by knplabs/knp-paginator-bundle[2.5.0] but those are rejected by your minimum-stability. 
    Problem 4 
    - sonata-project/user-bundle dev-master conflicts with sonata-project/intl-bundle[dev-master]. 
    - sonata-project/intl-bundle dev-master conflicts with sonata-project/user-bundle[dev-master]. 
    - sonata-project/intl-bundle dev-master conflicts with sonata-project/user-bundle[dev-master]. 
    - Installation request for sonata-project/intl-bundle dev-master -> satisfiable by sonata-project/intl-bundle[dev-master]. 
    - Installation request for sonata-project/user-bundle dev-master -> satisfiable by sonata-project/user-bundle[dev-master]. 

我不知道自己還能做些什麼..是否有安裝新的捆綁的方式沒有這些問題?

+0

PHP composer.phar要求stfalcon/tinymce-bundle ='1.0' –

回答

0

它應該是從你的composer.json取出那麼簡單,執行:

php composer.phar require stfalcon/tinymce-bundle:1.0 

如果您還有任何錯誤,這可能是由於這個特殊的捆綁的矛盾或存在不兼容的依賴關係你自己的依賴。

而且你絕對不應該依賴dev-master版本。使用特定的版本,而不是像「^ 3.10.0」那樣針對您的應用的每個需求。項目上的主分支可能不穩定並且是最新的,特別是關於composer.json依賴性聲明。通過準確的選擇取代dev-master可能會解決您的問題。

+0

這就是問題..我在做需求時遇到了捆綁包... – Dominykas55

+0

從我在您的帖子中看到的您正在進行更新,而不是需求,wh你遇到衝突。你能發佈你從需求中獲得的錯誤嗎? –

0

從Symfony2的目錄更簡單的命令是:

composer require stfalcon/tinymce-bundle "dev-master" 

,我認爲它應該工作,你可以試試嗎?

+0

不應該依賴dev-master版本... –

0

這是安裝包

我今天都面臨着同樣的問題,一個最好的辦法,我已經使用需要命令

像安裝特定的軟件包:

composer require bundleName version