Composer 更新导致“symfony/framework-bundle 2.0.7 需要 symfony/translator 2.0.7 -> 找不到匹配的包”。
Posted
技术标签:
【中文标题】Composer 更新导致“symfony/framework-bundle 2.0.7 需要 symfony/translator 2.0.7 -> 找不到匹配的包”。【英文标题】:Composer update results in "symfony/framework-bundle 2.0.7 requires symfony/translator 2.0.7 -> no matching package found." 【发布时间】:2013-03-07 19:17:18 【问题描述】:错误信息是:
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 2.0.7 requires symfony/translator 2.0.7 -> no matching package found.
[snip]
作曲家版本是d929a0813ae473272d151d9ebb2af7ebae451e48
,安装了以下包:
搜索错误消息主要返回包含错误消息的结果,但没有解决方案,或者指向正确的方向...
这可能是巧合,但此消息在运行composer self-update
[编辑]
我的composer.json
"autoload":
"psr-0":
"": "src/"
,
"description": "The \"Symfony Standard Edition\" distribution",
"extra":
"branch-alias":
"dev-master": "2.2-dev"
,
"symfony-app-dir": "app",
"symfony-web-dir": "web"
,
"minimum-stability": "alpha",
"name": "symfony/framework-standard-edition",
"repositories": [
"package":
"dist":
"type": "file",
"url": "http://code.jquery.com/jquery-1.9.1.js"
,
"name": "jquery/jquery",
"version": "1.9.1"
,
"type": "package"
],
"require":
"antimattr/google-bundle": "dev-master",
"braincrafted/bootstrap-bundle": "dev-master",
"doctrine/data-fixtures": "dev-master",
"doctrine/doctrine-bundle": "1.2.*",
"doctrine/doctrine-fixtures-bundle": "dev-master",
"doctrine/doctrine-migrations-bundle": "dev-master",
"doctrine/migrations": "dev-master",
"doctrine/orm": "~2.2,>=2.2.3",
"friendsofsymfony/comment-bundle": "2.*@dev",
"friendsofsymfony/rest-bundle": "0.*@dev",
"friendsofsymfony/user-bundle": "*",
"gedmo/doctrine-extensions": "master-dev",
"hwi/oauth-bundle": "*",
"jms/di-extra-bundle": "1.3.*",
"jms/security-extra-bundle": "1.4.*",
"jquery/jquery": "1.9.*",
"leafo/lessphp": "dev-master",
"ornicar/akismet-bundle": "dev-master",
"php": ">=5.3.3",
"sensio/distribution-bundle": "2.2.*",
"sensio/framework-extra-bundle": "2.2.*",
"sensio/generator-bundle": "2.2.*",
"symfony/assetic-bundle": "2.1.*",
"symfony/monolog-bundle": "2.2.*",
"symfony/swiftmailer-bundle": "2.2.*",
"symfony/framework-bundle": ">=2.0,<=2.2-dev",
"symfony/symfony": "2.2.*",
"twig/extensions": "1.0.*",
"twitter/bootstrap": "2.3.*"
,
"scripts":
"post-install-cmd": [
"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": [
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
]
【问题讨论】:
您的composer.json
中有什么内容?您是否尝试在运行更新之前手动清空 vendor
文件夹?
我同意@cheesemacfly,请发布您的 composer.json 内容并告诉我们您正在使用的 Symfony 准确 版本。
用composer.json
的内容更新了我的问题。将 vendor
重命名为 vendor.old
并运行 composer update,不幸的是错误消息仍然存在
【参考方案1】:
如果你替换你的composer.json
,它将起作用:
"symfony/framework-bundle": ">=2.0,<=2.2-dev"
"hwi/oauth-bundle": "*"
用(例如):
"symfony/framework-bundle": "v2.2.0",
"hwi/oauth-bundle": "0.2.*@dev"
这两个问题是:
"symfony/framework-bundle": ">=2.0,<=2.2-dev"
这需要:
symfony/translator: 2.0.7
但是这个已经不存在了...... 然后
"hwi/oauth-bundle": "*"
因为它需要:
symfony/framework-bundle: >=2.0,<2.2-dev
所以你完整的composer.json
将是:
"autoload":
"psr-0":
"": "src/"
,
"description": "The \"Symfony Standard Edition\" distribution",
"extra":
"branch-alias":
"dev-master": "2.2-dev"
,
"symfony-app-dir": "app",
"symfony-web-dir": "web"
,
"minimum-stability": "alpha",
"name": "symfony/framework-standard-edition",
"repositories": [
"package":
"dist":
"type": "file",
"url": "http://code.jquery.com/jquery-1.9.1.js"
,
"name": "jquery/jquery",
"version": "1.9.1"
,
"type": "package"
],
"require":
"php": ">=5.3.3",
"symfony/symfony": "2.2.*",
"doctrine/orm": "~2.2,>=2.2.3",
"doctrine/doctrine-bundle": "1.2.*",
"twig/extensions": "1.0.*",
"symfony/assetic-bundle": "2.1.*",
"symfony/swiftmailer-bundle": "2.2.*",
"symfony/monolog-bundle": "2.2.*",
"sensio/distribution-bundle": "2.2.*",
"sensio/framework-extra-bundle": "2.2.*",
"sensio/generator-bundle": "2.2.*",
"jms/security-extra-bundle": "1.4.*",
"jms/di-extra-bundle": "1.3.*",
"antimattr/google-bundle": "dev-master",
"braincrafted/bootstrap-bundle": "dev-master",
"doctrine/data-fixtures": "dev-master",
"doctrine/doctrine-fixtures-bundle": "dev-master",
"doctrine/doctrine-migrations-bundle": "dev-master",
"doctrine/migrations": "dev-master",
"friendsofsymfony/comment-bundle": "2.*@dev",
"friendsofsymfony/rest-bundle": "0.*@dev",
"friendsofsymfony/user-bundle": "*",
"gedmo/doctrine-extensions": "master-dev",
"jquery/jquery": "1.9.*",
"leafo/lessphp": "dev-master",
"ornicar/akismet-bundle": "dev-master",
"twitter/bootstrap": "2.3.*",
"symfony/framework-bundle": "v2.2.0",
"hwi/oauth-bundle": "0.2.*@dev"
,
"scripts":
"post-install-cmd": [
"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": [
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
]
我用空格分隔了不同的要求如下:
-
标准 Symfony 2.2
项目中的额外捆绑包
导致问题的原因
【讨论】:
以上是关于Composer 更新导致“symfony/framework-bundle 2.0.7 需要 symfony/translator 2.0.7 -> 找不到匹配的包”。的主要内容,如果未能解决你的问题,请参考以下文章
无法重新声明类 Composer 导致无法 Php artisan 服务
Doctrine2更新导致Zend Framework 3中的AnnotationRegistry registerLoader错误