我正在尝试从laravel 5.1升级到5.3。尝试运行composer更新时,没有说我正在尝试安装symfony / console的多个版本。错误的一部分在
下Can only install one of: symfony/console[v3.1.0-BETA1, v2.8.9].
- Can only install one of: symfony/console[v3.1.0-BETA1, 2.7.x-dev].
- laravel/framework v5.3.0-RC1 requires symfony/console 3.1.* -> satisfiable by symfony/console[3.1.x-dev, v3.1.0, v3.1.0-BETA1, v3.1.0-RC1, v3.1.1, v3.1.10, v3.1.2, v3.1.3, v3.1.4, v3.1.5, v3.1.6, v3.1.7, v3.1.8, v3.1.9].
- Conclusion: don't install peridot-php/peridot 1.16.0|don't install symfony/console 3.1.x-dev
- Conclusion: don't install peridot-php/peridot 1.16.0|don't install symfony/console v3.1.10
peridot-php/peridot 1.16.0 requires symfony/console ~2.0 -> satisfiable by symfony/console[2.7.x-dev, 2.0.4, 2.0.5, 2.0.6, 2.0.7, 2.0.x-dev
laravel 5.3需要symfony / console 3.1。*,但是橄榄石的要求是“ symfony / console”:“ ^ 2 | ^ 3”
我可能误会了一些东西,但是^ 2 | ^ 3并不意味着2. *或3. *可以满足要求吗?
我的composer.json
{
"name": "project/name",
"description": "description",
"type": "project",
"require": {
"laravel/framework": "5.3.*",
"doctrine/orm": "2.5.*@dev",
"doctrine/collections": "1.2",
"laracasts/flash": "~1.3",
"symfony/yaml": "2.5.*@dev",
"phpoffice/phpexcel": "dev-develop",
"peridot-php/peridot": "1.16.0",
"respect/validation": "0.8.*@dev",
"filp/whoops": "1.*@dev",
"davejamesmiller/laravel-breadcrumbs": "3.0.*",
"facebook/webdriver": "1.0.1",
"katzgrau/klogger": "dev-master",
"laravel-doctrine/orm": "1.2.*",
"laravelcollective/html": "5.3.*",
"laravel-doctrine/extensions": "1.0.x-dev",
"rdlowrey/auryn": "dev-master",
"paragonie/random-lib": "^2.1@dev",
"consolibyte/quickbooks": "3.4.*",
"phpmailer/phpmailer": "dev-master",
"defuse/php-encryption": "dev-master",
"gedmo/doctrine-extensions": "2.4.1"
},
"require-dev": {
"peridot-php/peridot-jumpstart": "~1.0",
"peridot-php/peridot-prophecy-plugin": "~1.0",
"satooshi/php-coveralls": "~0.6.1",
"peridot-php/peridot-watcher-plugin": "~1.3",
"fzaninotto/faker": "1.5.*",
"symfony/dom-crawler": "~3.1",
"symfony/css-selector": "~3.1"
},
"autoload": {
"classmap": [
"database",
"src",
"tests/unit"
],
"psr-4": {
"App\\": "app/",
"OS\\":"src/"
}
},
"scripts": {
"post-install-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-update-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-create-project-cmd": [
"php -r \"copy('.env.example', '.env');\"",
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "dev"
}
答案 0 :(得分:1)
您的错误消息表明,您所需的peridot-php/peridot
软件包v1.16仅与symfony/console
版本的~2.0
一起使用,该版本等效于任何2.x版本,因此与3 Laravel要求的symfony/console
的.x版本。
支持peridot-php/peridot
3.x的symfony/console
的第一个版本是1.18.1,因此您需要增加对该版本的依赖性以正确支持Symfony Console 3.x。