创建Laravel项目时控制台报错求助:无法解析可安装依赖包
我之前也碰到过一模一样的Composer依赖问题,结合你的环境(PHP7.2.0 + Windows10 + 曾成功搭建Laravel6),给你几个针对性的排查和解决步骤:
1. 确认Laravel版本与PHP的兼容性
你当前用的是PHP7.2.0,而Laravel7及以上版本要求PHP7.2.5+,如果现在你直接运行默认的composer create-project laravel/laravel your-project,Composer会尝试拉取最新的Laravel版本,这就会因为PHP版本不达标出现依赖冲突。
如果你想继续用Laravel6(和你的PHP7.2.0兼容),请用指定版本的命令:
composer create-project laravel/laravel:^6.0 your-project-name
2. 清理Composer缓存
Windows下打开命令提示符(CMD),先清理Composer的缓存,避免旧的依赖缓存干扰解析:
composer clear-cache
清理完成后再重新尝试创建项目。
3. 切换Composer镜像源
国内部分镜像源可能同步不及时,或者当前使用的源有异常,可以切换到稳定的源:
- 切换到官方源:
composer config -g repo.packagist composer https://packagist.org - 或者切换到阿里云国内源(速度更快):
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
切换完成后再执行项目创建命令。
4. 检查PHP必要扩展是否齐全
Laravel6运行需要以下核心扩展,你可以在CMD里运行php -m查看已启用的扩展列表,确保这些扩展都存在:
- OpenSSL
- PDO
- Mbstring
- Tokenizer
- XML
- Ctype
- JSON
如果缺少某扩展,找到你的PHP安装目录下的php.ini文件,去掉对应扩展行前面的分号(比如;extension=mbstring改成extension=mbstring),然后重启你的PHP环境(比如XAMPP/WAMP的服务)。
5. 手动指定依赖尝试安装
如果上面的方法都不行,可以尝试手动构建项目:
- 创建一个空文件夹,进入该文件夹
- 新建
composer.json文件,写入Laravel6的基础依赖配置:{ "name": "laravel/laravel", "type": "project", "description": "The Laravel Framework.", "keywords": ["framework", "laravel"], "license": "MIT", "require": { "php": "^7.2", "fideloper/proxy": "^4.0", "laravel/framework": "^6.20", "laravel/tinker": "^2.0" }, "require-dev": { "facade/ignition": "^1.4", "fzaninotto/faker": "^1.4", "mockery/mockery": "^1.0", "nunomaduro/collision": "^3.0", "phpunit/phpunit": "^8.0" }, "autoload": { "psr-4": { "App\\": "app/" }, "classmap": [ "database/seeds", "database/factories" ] }, "autoload-dev": { "psr-4": { "Tests\\": "tests/" } }, "extra": { "laravel": { "dont-discover": [] } }, "scripts": { "post-root-package-install": [ "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" ], "post-create-project-cmd": [ "@php artisan key:generate" ], "post-autoload-dump": [ "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", "@php artisan package:discover" ] }, "config": { "preferred-install": "dist", "sort-packages": true, "optimize-autoloader": true }, "minimum-stability": "dev", "prefer-stable": true } - 在CMD里进入该文件夹,运行
composer install尝试安装
如果这些步骤都试过还是有问题,建议把Composer输出的完整错误信息(红底提示下方通常会有具体的依赖冲突细节)贴出来,这样能更精准地定位问题。
内容的提问来源于stack exchange,提问作者schutte

