包含依赖项的Composer包给我错误

时间:2018-04-26 19:37:38

标签: composer-php

我不明白为什么会出现这个错误,因为每个项目都只使用master发布在packagist上:

第二个项目的

composer.json

{
    "type": "symfony-bundle",
    "license": "MIT",
    "require": {
        "php": "^7.1.3",
        "vendor/project1": "dev-master"
    }   
}

以下是我遇到的错误:

 Problem 1
    - Installation request for VENDOR/PROJECT2 dev-master -> satisfiable by VENDOR/PROJECT2[dev-master].
    - VENDOR/PROJECT2 dev-master requires VENDOR/PROJECT1 dev-master -> satisfiable by VENDOR/PROJECT1[dev-master] but these conflict with your requirements or minimum-stability.

我错过了什么?

1 个答案:

答案 0 :(得分:2)

这与minimum-stability设置有关。默认情况下,它设置为stable,除非您明确声明需要,否则不允许安装不稳定的包。您可以通过两种方式解决此问题:

  1. 允许安装不稳定的依赖项。将其添加到您的composer.json

    "minimum-stability": "dev",
    "prefer-stable": true,
    

    prefer-stable确保您获得稳定的软件包(如果存在) - 如果没有此设置,Composer将安装dev分支机构的所有内容,您可能不希望这样。

  2. 在不稳定版本中明确要求包:

    "require": {
        ...
        "VENDOR/PROJECT1": "dev-master"
    },
    
  3. 只有在主应用的composer.json中执行此操作时,这两种解决方案才有效。