Composer Update


Composer Update

我今天(2015年9月14日(再次更新整个问题

我使用的是Windows 8。我正在使用Symfony php框架。我尝试使用此命令更新composerphp D:''php''php''pomposer.phar更新。然后我收到以下错误消息。

    Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
  Problem 1
    - symfony/framework-bundle v2.0.18 requires symfony/dependency-injection v2.
0.18 -> no matching package found.
    - symfony/framework-bundle v2.0.17 requires symfony/dependency-injection v2.
0.17 -> no matching package found.
    - symfony/framework-bundle 2.0.7 requires symfony/translator 2.0.7 -> no mat
ching package found.
    - Conclusion: remove symfony/symfony v2.3.32
    - Conclusion: don't install symfony/symfony v2.3.32
    - Conclusion: don't install symfony/symfony v2.3.31
    - Conclusion: don't install symfony/symfony v2.3.30
    - Conclusion: don't install symfony/symfony v2.3.29
    - Conclusion: don't install symfony/symfony v2.3.28
    - Conclusion: don't install symfony/symfony v2.3.27
    - Conclusion: don't install symfony/symfony v2.3.26
    - Conclusion: don't install symfony/symfony v2.3.25
    - Conclusion: don't install symfony/symfony v2.3.24
    - Conclusion: don't install symfony/symfony v2.3.23
    - Conclusion: don't install symfony/symfony v2.3.22
    - Conclusion: don't install symfony/symfony v2.3.21
    - Conclusion: don't install symfony/symfony v2.3.20
    - Conclusion: don't install symfony/symfony v2.3.19
    - Conclusion: don't install symfony/symfony v2.3.18
    - Conclusion: don't install symfony/symfony v2.3.17
    - Conclusion: don't install symfony/symfony v2.3.16
    - Conclusion: don't install symfony/symfony v2.3.15
    - Conclusion: don't install symfony/symfony v2.3.14
    - Conclusion: don't install symfony/symfony v2.3.13
    - Conclusion: don't install symfony/symfony v2.3.12
    - Conclusion: don't install symfony/symfony v2.3.11
    - Conclusion: don't install symfony/symfony v2.3.10
    - Conclusion: don't install symfony/symfony v2.3.9
    - Conclusion: don't install symfony/symfony v2.3.8
    - Conclusion: don't install symfony/symfony v2.3.7
    - Conclusion: don't install symfony/symfony v2.3.6
    - Conclusion: don't install symfony/symfony v2.3.5
    - Conclusion: don't install symfony/symfony v2.3.4
    - Conclusion: don't install symfony/symfony v2.3.3
    - Installation request for friendsofsymfony/rest-bundle 0.11.* -> satisfiabl
e by friendsofsymfony/rest-bundle[0.11.0].
    - Conclusion: don't install symfony/symfony v2.3.2
    - Conclusion: don't install symfony/symfony v2.3.1
    - friendsofsymfony/rest-bundle 0.11.0 requires symfony/framework-bundle >=2.
0,<2.3-dev -> satisfiable by symfony/framework-bundle[2.0.7, v2.0.10, v2.0.12, v
2.0.13, v2.0.14, v2.0.15, v2.0.16, v2.0.17, v2.0.18, v2.0.19, v2.0.20, v2.0.21,
v2.0.22, v2.0.23, v2.0.24, v2.0.25, v2.0.9, v2.1.0, v2.1.1, v2.1.10, v2.1.11, v2
.1.12, v2.1.13, v2.1.2, v2.1.3, v2.1.4, v2.1.5, v2.1.6, v2.1.7, v2.1.8, v2.1.9,
v2.2.0, v2.2.1, v2.2.10, v2.2.11, v2.2.2, v2.2.3, v2.2.4, v2.2.5, v2.2.6, v2.2.7
, v2.2.8, v2.2.9].
    - don't install symfony/framework-bundle v2.2.0|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.2.1|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.2.10|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.2.11|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.2.2|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.2.3|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.2.4|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.2.5|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.2.6|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.2.7|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.2.8|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.2.9|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.0|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.1|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.10|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.1.11|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.1.12|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.1.13|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.1.2|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.3|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.4|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.5|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.6|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.7|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.8|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.1.9|don't install symfony/symfon
y v2.3.0
    - don't install symfony/framework-bundle v2.0.10|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.12|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.13|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.14|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.15|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.16|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.19|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.20|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.21|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.22|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.23|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.24|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.25|don't install symfony/symfo
ny v2.3.0
    - don't install symfony/framework-bundle v2.0.9|don't install symfony/symfon
y v2.3.0
    - Installation request for symfony/symfony 2.3.* -> satisfiable by symfony/s
ymfony[v2.3.0, v2.3.1, v2.3.10, v2.3.11, v2.3.12, v2.3.13, v2.3.14, v2.3.15, v2.
3.16, v2.3.17, v2.3.18, v2.3.19, v2.3.2, v2.3.20, v2.3.21, v2.3.22, v2.3.23, v2.
3.24, v2.3.25, v2.3.26, v2.3.27, v2.3.28, v2.3.29, v2.3.3, v2.3.30, v2.3.31, v2.
3.32, v2.3.4, v2.3.5, v2.3.6, v2.3.7, v2.3.8, v2.3.9].
Potential causes:
 - A typo in the package name
 - The package is not available in a stable-enough version according to your min
imum-stability setting
   see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> f
or more details.
Read <https://getcomposer.org/doc/articles/troubleshooting.md> for further commo
n problems.

composer.json

     {
    "name": "symfony/framework-standard-edition",
    "license": "MIT",
    "type": "project",
    "description": "The '"Symfony Standard Edition'" distribution",
    "autoload": {
        "psr-0": {
            "": "src/"
        }
    },
    "require": {
        "php": ">=5.3.3",
        "symfony/symfony": "2.3.*",
        "doctrine/orm": ">=2.2.3,<2.4-dev",
        "doctrine/doctrine-bundle": "1.2.*",
        "twig/extensions": "1.0.*",
        "symfony/assetic-bundle": "2.3.*",
        "symfony/swiftmailer-bundle": "2.3.*",
        "symfony/monolog-bundle": "2.3.*",
        "sensio/distribution-bundle": "2.3.*",
        "sensio/framework-extra-bundle": "2.3.*",
        "sensio/generator-bundle": "2.3.*",
        "incenteev/composer-parameter-handler": "~2.0",
        "friendsofsymfony/user-bundle": "~2.0@dev",
        "friendsofsymfony/elastica-bundle": "3.0.*@dev",
        "knplabs/knp-menu": "2.0.*@dev",
        "knplabs/knp-menu-bundle": "2.0.*@dev",
        "knplabs/doctrine-behaviors": "1.0.*@dev",
        "jms/serializer-bundle": "*",
        "friendsofsymfony/rest-bundle": "0.11.*",
        "white-october/pagerfanta-bundle": "1.0.*@dev"
    },
    "scripts": {
        "post-install-cmd": [
            "Incenteev''ParameterHandler''ScriptHandler::buildParameters",
            "Sensio''Bundle''DistributionBundle''Composer''ScriptHandler::buildBootstrap",
            "Sensio''Bundle''DistributionBundle''Composer''ScriptHandler::clearCache",
            "Sensio''Bundle''DistributionBundle''Composer''ScriptHandler::installAssets",
            "Sensio''Bundle''DistributionBundle''Composer''ScriptHandler::installRequirementsFile"
        ],
        "post-update-cmd": [
            "Incenteev''ParameterHandler''ScriptHandler::buildParameters",
            "Sensio''Bundle''DistributionBundle''Composer''ScriptHandler::buildBootstrap",
            "Sensio''Bundle''DistributionBundle''Composer''ScriptHandler::clearCache",
            "Sensio''Bundle''DistributionBundle''Composer''ScriptHandler::installAssets",
            "Sensio''Bundle''DistributionBundle''Composer''ScriptHandler::installRequirementsFile"
        ]
    },
    "config": {
        "bin-dir": "bin"
    },
    "minimum-stability": "stable",
    "extra": {
        "symfony-app-dir": "app",
        "symfony-web-dir": "web",
        "incenteev-parameters": {
            "file": "app/config/parameters.yml"
        },
        "branch-alias": {
            "dev-master": "2.3-dev"
        }
    }
}

有人能说这个错误的补救办法是什么吗??感谢

尝试运行以下命令:

php d:'php'php'composer.phar show -i

这应该打印出当前安装在系统上的软件包的列表及其版本。查找doctrine/doctrine-bundle以查看它的版本。

如果没有列出,您可能只需要将这一行添加到composer.json文件的require部分:

    "doctrine/doctrine-bundle": "~1.3",

然后重新运行update命令。然而,这似乎不太可能,因为如果没有冲突,Composer通常会自动检索该依赖关系。

"~1.3"来自sylius/resource-bundle,它将其作为依赖项。这意味着它正在寻找任何稳定的1.3.X版本的DoctrineBundle包(其中只有1.3.0版本(。这也是一个旧版本,因为当前版本是1.5.2。

有一些技巧可以用来欺骗Composer,让其认为包与某个版本匹配,尽管这些通常不是一个好主意,因为版本化的依赖关系通常是有原因的。

很可能需要更多的信息来发现这不起作用的确切原因,因为Composer通常会让你知道哪些包存在冲突,而它不在这里。

问题在于这种依赖性:

"friendsofsymfony/rest-bundle": "0.11.*",

此依赖关系似乎依赖于较旧版本的Symfony/framework bundle,后者似乎依赖于的v2.0.18版本Symfony/依赖项注入。奇怪的是,该软件包的v2.0.16和v2.0.19之间存在差距,而且正如错误所示,您需要的版本不可用。

我发现我可以通过将你的依赖性版本号提高1:来解决这个问题

"friendsofsymfony/rest-bundle": "0.12.*",

但是,您应该确保您的应用程序仍然可以使用此更改

friendsofsymfony/rest捆绑包的当前版本是1.7,如果可行的话,您应该考虑进行更改以使用该包,以避免将来出现任何类似的奇怪冲突。

sylius/resource-bundle dev-master requires doctrine/doctrine-bundle ~1.3

很可能条令捆绑包使用了你已经使用的东西的不兼容版本。

将此行添加到需求列表中:

"jms/serializer-bundle": "*",

.例如

"require": {
    "php": ">=5.3.3",
    […]
    "knplabs/doctrine-behaviors": "1.0.*@dev",
    "jms/serializer-bundle": "*",
    "white-october/pagerfanta-bundle": "1.0.*@dev"
},