2017-07-14 86 views
0

在我的作曲家,我一個模塊的版本如下定義:作曲版本模式不工作

"my-module": "1.*" 

一切工作正常,直到我已經改變了模塊標籤版本1.0.10

奇怪的是,作曲家總是在加載1.0.9。 我可以將模式更改爲"1.0.*",但我找不到任何信息,爲什麼"1.*"不起作用。

btw。 我正在使用作曲家版本1.4.1

+0

你運行了哪個命令?如果有一個composer.lock文件(你應該在你的repo中包含),那麼你需要運行'composer update my-module'。我不會再使用*作爲版本限制。我猜你的應用程序需要這個錯誤修正,所以最好使用''my-module':「^ 1.0.10」' –

+0

我刪除了composer.lock和vendor文件夾並運行'composer install'。 請注意,如果我將模式更改爲'「1.0。*」'它可以工作,但'「1。*」'不起作用。 – loremIpsum

+0

首先你不應該簡單地刪除composer.lock,這是有原因的。並且不要再使用星號通配符。它並不妨礙在你的應用程序的未來版本中,由於其他軟件包依賴關係,你的版本再次下降到1.0.8或類似,當你刪除composer.lock時,你甚至可能會錯過這個。你有沒有嘗試過使用'「^ 1.0.10」'?我認爲「1. *」甚至是無效的,請參閱文檔:https://getcomposer.org/doc/articles/versions.md#wildcard-version-range-這也許是有趣的:https://www.youtube。 com/watch?v = nGD7G8-ccqs&t = 1230 –

回答

0

要找出特定版本未更新的原因,您可以運行composer why-not package/name version,Composer將列出阻止安裝該特定版本的所有依賴項。

我有一種感覺,在你的情況下,你會發現另一個你還沒有考慮過的包。