composer.json - 单个包的最小稳定性

时间:2016-10-18 13:08:13

标签: symfony composer-php

我遇到了这个问题,每当我想下载dev-master运行$ composer require egeloen/google-map-bundle dev-master包时,我都会收到错误:

  

问题1

     
      
  • egeloen / google-map-bundle dev-master的安装请求 - > egeloen / google-map-bundle [dev-master]可以满足。
  •   
  • egeloen / google-map-bundle dev-master需要egeloen / google-map ^2.0@dev - > egeloen / google-map [2.0.x-dev]可以满足,但这些   与您的要求或最低稳定性相冲突。
  •   

当我将minimum-stability: "dev"添加到composer.json文件时,它突然将包括symfony / symfony在内的所有软件包升级到dev-master。我没有收到任何错误,但我担心将来我可能会遇到一些不稳定的软件包。

我做了一些研究,发现可以将minimum-stability设置为单个包。我试过这个:

$ composer require egeloen/google-map-bundle dev-master@dev

但不幸的是我收到了一个错误:

  

问题1

     
      
  • egeloen / google-map-bundle dev-master需要egeloen / google-map ^2.0@dev - > egeloen / google-map [2.0.x-dev]可以满足。      
        
    • egeloen / google-map-bundle dev-master需要egeloen / google-map ^2.0@dev - > egeloen / google-map [2.0.x-dev]可以满足。
    •   
    • egeloen / google-map的删除请求== 2.0.9999999.9999999-dev
    •   
    • egeloen / google-map-bundle dev-master @ dev的安装请求 - >可满足的   egeloen /谷歌地图束[DEV-主]。
    •   
  •   

不幸的是它建议^2.0@dev,但那个版本不是我需要的。我错了什么或我错过了哪些想法?

1 个答案:

答案 0 :(得分:2)

您要安装的软件包具有另一个依赖项egeloen/google-map,其约束为^2.0@dev(也不要将此软件包与软件包包混淆)。由于此依赖关系尚未发布稳定的2.0版本,因此当您的最低稳定性为stable时,它会失败。

要解决此问题而不降低其他软件包的最低稳定性,您应该在依赖项中明确列出egeloen/google-map

"egeloen/google-map": "^2.0@dev"

这将允许Composer安装此“二级”依赖项的非稳定版本。