简体   繁体   English

作曲家:必需的依赖项冲突和版本稳定性

[英]Composer: required dependency conflict And version stability

I have package PACK-A , which is require by other packages ( PACK-X , PACK-Y , PACK-Z) . 我有PACK-A软件包,其他软件包( PACK-XPACK-YPACK-Z)也需要

I include all those packages in my main project PROJ-FUN. 我在主项目PROJ-FUN中包含了所有这些软件包。

Those packages ( PACK-X , PACK-Y , PACK-Z ) require version "~1.0.0" from PACK-A. 这些软件包( PACK-XPACK-YPACK-Z )需要PACK-A的版本“〜1.0.0”。

Now i clone PACK-A to a new repository with version "0.10.29" and now i try to require PACK-A in the project but i have the following error : 现在,我将PACK-A克隆到版本为“ 0.10.29”的新存储库中,现在我尝试在项目中要求使用PACK-A,但出现以下错误:

Problem 1 问题1

  • VENDOR/PACK-X v1.1.1 requires VENDOR/PACK-A ^1.0.1 -> satisfiable by VENDOR/PACK-X[v1.0.2] but these conflict with your requirements or minimum-stability. VENDOR / PACK-X v1.1.1要求VENDOR / PACK-A ^ 1.0.1-> VENDOR / PACK-X [v1.0.2]可以满足,但这些与您的要求或最低稳定性相冲突。
  • ...... ......
  • ...... ......
  • Installation request for VENDOR/PACK-X ^1.1.1 -> satisfiable by VENDOR/PACK-X[v1.1.1]. VENDOR / PACK-X [v1.1.1]可满足VENDOR / PACK-X ^ 1.1.1->的安装请求。

I try do the following but in vain : 我尝试做以下但徒劳的:

  • "VENDOR/PACK-A": "0.10.29 as 1.1.2" . “ VENDOR / PACK-A”:“ 0.10.29 as 1.1.2”。
  • "VENDOR/PACK-A": "dev-master" . “ VENDOR / PACK-A”:“ dev-master”。
  • "VENDOR/PACK-A": "@DEV" . “ VENDOR / PACK-A”:“ @DEV”。
  • Set minimum stability to dev. 为开发人员设置最低稳定性。
  • Ignore platform Requirement. 忽略平台要求。

My Project JSON : 我的项目JSON:

{
"name": "VENDOR/fun-project",
"description": "VENDOR/FUN APPLICAION",
"license": "proprietary",
"prefer-stable": "true",
"require": {
    "VENDOR/PACK-A": "0.10.29 as 1.1.2@dev",
    "VENDOR/PACK-X": "^1.1",
    "VENDOR/PACK-Y": "^1.1",
    "VENDOR/PACK-Z": "^1.1"
},
"config": {
    "bin-dir": "bin",
    "discard-changes": "true"
},
"repositories": [{
    "type": "git",
    "url": "git@github.com:VENDOR/PACK-A"
}]

} }

PACK-XYZ JSON : PACK-XYZ JSON:

{
    "name": "VENDOR / PACK - X",
    "description": "",
    "type": "symfony-bundle",
    "license": "proprietary",
    "require": {
        "VENDOR / PACK - A": "~1.0.0"
    },
    "extra": {
        "branch-alias": {
            "dev-master": "1.1.x-dev"
        }
    },
    "repositories": [{
        "type": "git",
        "url": "https://github.com/VENDOR/PACK-A.git"
    }]
}

Any one could help how to solve this ? 任何人都可以帮助解决这个问题? Thank you in advance. 先感谢您。

** References :** **参考文献:**

Apparently, all of your projects 显然,您所有的项目

  • vendor/pack-x
  • vendor/pack-y
  • vendor/pack-z

depend on 取决于

  • vendor/pack-a:~1.0.0

The ~ operator used here allows to install vendor/pack-a in any version equal to or greater than 1.0.0 and less than 1.1.0 . 此处使用的~运算符允许以等于或大于1.0.0且小于1.1.0任何版本安装vendor/pack-a

Furthermore, your project 此外,您的专案

  • vendor/fun-project

requires all of 需要所有

  • vendor/pack-x
  • vendor/pack-y
  • vendor/pack-z

and additionally 还有

  • vendor/pack-a:0.10.29 as 1.1.2@dev

However, 1.1.2@dev clearly conflicts with the earlier version requirement of ~1.0.0 . 然而, 1.1.2@dev显然与早期版本的要求相冲突~1.0.0

Try adjusting your inline alias for vendor/fun-project to: 尝试将vendor/fun-project内联别名调整为:

  • vendor/pack-a:0.10.29 as 1.0.99

For reference, see: 供参考,请参阅:

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM