使用Symfony2,将nelmio / api-doc-bundle添加到我的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.4",
"doctrine/orm": "~2.2,>=2.2.3",
"doctrine/doctrine-bundle": "~1.2",
"twig/extensions": "~1.0",
"symfony/assetic-bundle": "~2.3",
"symfony/swiftmailer-bundle": "~2.3",
"symfony/monolog-bundle": "~2.4",
"sensio/distribution-bundle": "~2.3",
"sensio/framework-extra-bundle": "~3.0",
"sensio/generator-bundle": "~2.3",
"incenteev/composer-parameter-handler": "~2.0",
"jms/serializer-bundle" : "0.13.0",
"friendsofsymfony/rest-bundle": "1.2.2",
"friendsofsymfony/user-bundle": "~2.0@dev",
"coresphere/console-bundle": "dev-master",
"nelmio/api-doc-bundle": "2.4.5"
},
"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"
},
"extra": {
"symfony-app-dir": "app",
"symfony-web-dir": "web",
"incenteev-parameters": {
"file": "app/config/parameters.yml"
},
"branch-alias": {
"dev-master": "2.4-dev"
}
}
}
但是当我运行composer update时,脚本会阻止更新依赖项。详细说明,我可以看到这条线被冻结了:
Reading /root/.composer/cache/repo/https---packagist.org/provider-jms$cg.json from cache
在添加nelmio / api-doc-bundle之前很好,但是我在另一个捆绑包中遇到了同样的问题(我最终重置了该项目)。
编辑02/07 :当我进行作曲家安装(使用--prefer-dist或--prefer-source)时,我遇到以下错误:
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package friendsofsymfony/rest-bundle could not be found in any version, there may be a typo in the package name.
Problem 2
- The requested package jms/serializer-bundle could not be found in any version, there may be a typo in the package name.
Problem 3
- Installation request for symfony/framework-standard-edition 2.4.x-dev -> satisfiable by symfony/framework-standard-edition[2.4.x-dev].
- symfony/framework-standard-edition 2.4.x-dev requires jms/serializer-bundle 0.13.0 -> no matching package found.
Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setting
see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.
编辑2 :我将我的Symfony降级到~2.3,当我进行更新时,冻结的行发生了变化
Reading /root/.composer/cache/repo/https---packagist.org/provider-dflydev$markdown.json from cache
答案 0 :(得分:2)
它有效,尝试为作曲家添加“最小稳定性”:“dev”。 google groups from phar error
{ "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.4",
"doctrine/orm": "~2.2,>=2.2.3",
"doctrine/doctrine-bundle": "~1.2",
"twig/extensions": "~1.0",
"symfony/assetic-bundle": "~2.3",
"symfony/swiftmailer-bundle": "~2.3",
"symfony/monolog-bundle": "~2.4",
"sensio/distribution-bundle": "~2.3",
"sensio/framework-extra-bundle": "~3.0",
"sensio/generator-bundle": "~2.3",
"incenteev/composer-parameter-handler": "~2.0",
"jms/serializer-bundle" : "0.13.0",
"friendsofsymfony/rest-bundle": "1.2.2",
"friendsofsymfony/user-bundle": "~2.0@dev",
"coresphere/console-bundle": "dev-master",
"nelmio/api-doc-bundle": "2.4.5" }, "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": "dev", "extra": {
"symfony-app-dir": "app",
"symfony-web-dir": "web",
"incenteev-parameters": {
"file": "app/config/parameters.yml"
},
"branch-alias": {
"dev-master": "2.4-dev"
} } }
答案 1 :(得分:0)
在新版本的Symfony2中,某些捆绑包已被弃用或不再使用。你必须选择:
如果您要安装捆绑包但保留所有当前捆绑包,只需附加 - prefer-dist :
php composer update --prefer-dist