2016-02-24 22 views
3

composer.json無法更新單作曲包

"require": { 
    "php": ">=5.5.9", 
    "laravel/framework": "5.1.*", 
    "laravelcollective/html": "~5.0", 
    "laravel/cashier": "~5.0", 
    "baum/baum": "~1.1", 
    "laracasts/flash": "~1.3", 
    "intervention/image": "^2.3", 
    "toin0u/geocoder-laravel": "@stable", 
    "torann/geoip": "0.2.*@dev" 
}, 

composer show -i

laravel/cashier      v5.0.14   Laravel Cashier pr... 
laravel/framework      v5.1.29   The Laravel Framew... 

最新Laravel /出納的版本是6.0。
如果我運行composer update laravel/cashier我得到

沒有安裝或更新。

如果我修改我的composer.json"laravel/cashier": "~6.0"和運行composer install我得到

...鎖定的文件是不是最新的...並沒有安裝或更新。

什麼是更新軟件包的推薦方式,爲什麼不能composer update larave/cashier的工作?

回答

2

運行composer update只會更新您在composer.json中設置的版本約束內的軟件包。

由於您已將此包限制爲~5.0,因此它不會更新至版本6.0

首先將composer.json更新爲~6.0,然後運行composer update laravel/cashier

+0

太棒了,工作。但是有什麼辦法可以告訴作曲家無需更改composer.json即可獲取最新版本? – Cristian

+0

不是我所知道的。一旦你在composer.json中限制了版本,那就是權威。它必須先改變。 – Here2Help

+0

'update'的文檔位於:https://getcomposer.org/doc/03-cli.md#update。儘管受到composer.json的限制,但我沒有看到任何強制更新到最新版本的選項。 – Here2Help